Mix EA into DTA/TDA; part of 24024
This is _nearly_ all of the remaining DTA/TDA changes in #24024.  The things that are not included:

- constructor changes
- fillna, since in local testing it alters DTA inplace, so not ready

`value_counts` from 24024 has small change to make sure the tz-aware case is correct regardless of how the constructor changes in 24024 get resolved.  A test is added specifically to check for this.

The changes implied by mixing ExtensionArray into DatetimeLikeArrayMixin are _not_ tested yet, won't be until the extension tests part of #24024 is merged.  I don't see any way around that except for doing 24024 all at once.