BUG: Hash and compare tuple subclasses as builtin tuples
- [x] closes #57922
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [ ] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

Relaxing the `PyTuple_CheckExact` in [khash_python.h](https://github.com/pandas-dev/pandas/blob/080add14720218a20ca1dbde5e59d82d05534c5a/pandas/_libs/include/pandas/vendored/klib/khash_python.h#L210-L211) to `PyTuple_Check` would allow the usage of types created with `collections.namedtuple` as index keys everywhere `tuple` is expected.

It is worth noting this would change the behaviour of all client code expecting custom `__eq__` and `__hash__` functions in `tuple` subclasses to be respected.

This also removes the non-deterministic behaviour in cases where `collections.namedtuple` types and `tuple`s are used interchangeably.
I traced the intermittent `KeyError`s to [this part](https://github.com/pandas-dev/pandas/blob/080add14720218a20ca1dbde5e59d82d05534c5a/pandas/_libs/hashtable_class_helper.pxi.in#L1352-L1356) in `PyObjectHashTable`.
I did not verify this, but I suspect the [custom tuple hasher](https://github.com/pandas-dev/pandas/blob/080add14720218a20ca1dbde5e59d82d05534c5a/pandas/_libs/include/pandas/vendored/klib/khash_python.h#L274) leads to a scenario where builtin `tuple`s are hashed using the custom hasher, while all `tuple` subclasses are hashed with their own `__hash__`, resulting in different hash values.
For small hash tables, the resulting index might point to the correct bucket just by coincidence.

A similar issue, but for different types, was reported in https://github.com/pandas-dev/pandas/issues/39585.
Thanks @matiaslindgren 