REF: simplify EA.astype
- [ ] closes #xxxx
- [ ] tests added / passed
- [ ] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit) for how to run them
- [ ] whatsnew entry

Thanks @jbrockmendel do we need to include any additional tests to the base extension tests for the benefit of 3rd party EA devs? > do we need to include any additional tests to the base extension tests for the benefit of 3rd party EA devs?

I don't think so, doesnt change what authors are expected to implement
 unless they have already implemented their own astype method I assume? I don't understand the question I'm thinking that at the moment we don't support astype(EADType) except StringDType (for which IIRC we added tests to the base extension tests) unless we have implemented specifically it in the child classes.

Adding support in the base class for any EADType.astype(EADType) now means that we don't generate errors doing this from the main codebase and therefore all EA subclasses will now need to support this. EA authors that have implemented astype before this requirement may not support this? OK I see.  I don't think this changes what we expect from EA authors.  I guess we could test that doing an .astype to `PandasDtype[object]` works, Categorical following #43930 would be more meaningful.  Did you have something else in mind?