ENH: Allow ArrowDtype(pa.string()) to be compatable with str accessor
Reboot of #50325

Notable change was that `pandas.core.strings.BaseStringArrayMethods` in the `__init__.py` was causing a circular import when used in `ArrowExtensionArray`, so needed to remove the import into `__init__.py.` This breaks one of our dask tests but it has been fixed downstream https://github.com/dask/dask/pull/9907
Looks like dask-related doctests are failing.  do we need to pin a version somewhere? I think the docbuild will fail until dask releases a new version.

@jrbourbeau typically how often does dask release a new version? > @jrbourbeau typically how often does dask release a new version?

We release every two weeks. In fact, the latest release was pushed out a couple of hours ago  Oh perfect looks like this PR picked up the dask update and the tests are passing now! Any other comments here? (Failures are unrelated) Nice! thx