Improved index handling in Series and Array2D
This PR simplifies the way that index properties are handled between the Series
and Array2D
classes, mainly to remove the large amount of code duplication between the two.
Additionally I put in some small changes to preserve dtype
wherever possible, mainly in numpy
calls, and also to remove some unnecessary casts of LIGOTimeGPS
to float
, which can cause precision loss.