Review/Overhaul __array__ and view methods
#23524 fixes a problem with `DatetimeIndex.__array__`; we should do a thorough check of the `__array__` methods on other classes to make sure (and test) that they make sense
