CLN: Move some PI/DTI methods to EA subclasses, implement tests
If/when this goes through the basic template it creates for tests will be pretty straightforward to extend to the other relevant methods/properties.

@TomAugspurger this definitely overlaps with #22862, particularly the pieces touching constructors.  LMK if this causes problems and I can try to stay in my lane.