Make _freq/freq/tz/_tz/dtype/_dtype/offset/_offset all inherit reliably
There was an issue in rebasing #24024 in which index._freq didn't match index._eadata._freq.  This ensures that is never an issue by removing _freq/freq from the Index subclasses and making them properties aliasing the _eadata attrs.

To do this, we have to make _eadata not-a-property for the time being.

Also make the _tz --> _dtype transition in #24024, and fix a couple of places in DatetimeIndex where it sets _tz manually that would otherwise be missed.

Remove PeriodIndex.shift, since it now can use the DatetimeIndexOpsMixin version (also done in 24024)