POC: complete composition switchover
NOT FOR MERGING.  per @TomAugspurger 's request, we're done splitting off parts of #24024.  So this is just a proof of concept to get a handle on what parts that are left in 24024 are required for which goals.

This makes DTI._data a DTA and TDI._data a TDA, then goes through and changes stuff until the tests pass locally.  With the exception of a change to make TimedeltaIndex.union work, the changes are pretty much all taken from 24024 with minimal edits.