Use _values_for_factorize by default for hashing ExtensionArrays
PR https://github.com/pandas-dev/pandas/pull/51319 added the `EA._hash_pandas_object` method to let ExtensionArrays override how they are hashed. But it also changed to no longer use the values returned by `EA._values_for_factorize()` by default for hashing, but change this to `EA.to_numpy()`.  The previous behaviour was documented, and changing this can cause regressions / changes in behaviour or performance (depending on the return values of those two methods). 

See https://github.com/pandas-dev/pandas/pull/51319/files#r1212106303 for some more details.
@jbrockmendel are you OK with this? No objections. Owee, I'm MrMeeseeks, Look at me.

There seem to be a conflict, please backport manually. Here are approximate instructions:

1. Checkout backport branch and update it.

```
git checkout 2.0.x
git pull
```

2. Cherry pick the first parent branch of the this PR on top of the older branch:
```
git cherry-pick -x -m1 2a1d2da13f45c4ae38099a2f73e92308245e66f8
```

3. You will likely have some merge/cherry-pick conflict here, fix them and commit:

```
git commit -am 'Backport PR #53475: Use _values_for_factorize by default for hashing ExtensionArrays'
```

4. Push to a named branch:

```
git push YOURFORK 2.0.x:auto-backport-of-pr-53475-on-2.0.x
```

5. Create a PR against branch 2.0.x, I would have named this PR:

> "Backport PR #53475 on branch 2.0.x (Use _values_for_factorize by default for hashing ExtensionArrays)"

And apply the correct labels and milestones.

Congratulations — you did some good work! Hopefully your backport PR will be tested by the continuous integration and merged soon!

Remember to remove the `Still Needs Manual Backport` label once the PR gets merged.

If these instructions are inaccurate, feel free to [suggest an improvement](https://github.com/MeeseeksBox/MeeseeksDev).
                 Sorry for the backport noise, the original PR was only for 2.1, so of course this fixup only needs to target 2.1 as well Does this need a whatsnew?

This looks like only a regression on main.
(If so, the whatsnew can be deleted) Good catch, sorry! I only realized after merging it was only a change on main and thus didn't need to be backported, but forgot that I actually added a whatsnew ...