CLN: relocate lib.ismember* to hashtable space
- fixes ``.isin`` on 32-bit (hopefully)
- perf about 30% better (but this is a small number anyhow) & releases GIL
- more generic framework
# [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/15773?src=pr&el=h1) Report
> Merging [#15773](https://codecov.io/gh/pandas-dev/pandas/pull/15773?src=pr&el=desc) into [master](https://codecov.io/gh/pandas-dev/pandas/commit/163d18ed0d46eeb375f8170f1044808ff40b2a65?src=pr&el=desc) will **decrease** coverage by `0.01%`.
> The diff coverage is `100%`.


```diff
@@            Coverage Diff             @@
##           master   #15773      +/-   ##
==========================================
- Coverage   91.01%      91%   -0.02%     
==========================================
  Files         143      143              
  Lines       49377    49403      +26     
==========================================
+ Hits        44941    44957      +16     
- Misses       4436     4446      +10
```


| [Impacted Files](https://codecov.io/gh/pandas-dev/pandas/pull/15773?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [pandas/core/frame.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvZnJhbWUucHk=) | `97.86% <ø> (-0.1%)` | :arrow_down: |
| [pandas/indexes/multi.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2luZGV4ZXMvbXVsdGkucHk=) | `96.59% <100%> (ø)` | :arrow_up: |
| [pandas/indexes/numeric.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2luZGV4ZXMvbnVtZXJpYy5weQ==) | `97.1% <100%> (-0.02%)` | :arrow_down: |
| [pandas/io/parsers.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2lvL3BhcnNlcnMucHk=) | `95.51% <100%> (ø)` | :arrow_up: |
| [pandas/tseries/tools.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL3RzZXJpZXMvdG9vbHMucHk=) | `84.93% <100%> (+0.04%)` | :arrow_up: |
| [pandas/core/algorithms.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2NvcmUvYWxnb3JpdGhtcy5weQ==) | `94.41% <100%> (+0.15%)` | :arrow_up: |
| [pandas/io/gbq.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2lvL2dicS5weQ==) | `25% <0%> (-58.34%)` | :arrow_down: |
| [pandas/io/stata.py](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?src=pr&el=tree#diff-cGFuZGFzL2lvL3N0YXRhLnB5) | `93.47% <0%> (-0.05%)` | :arrow_down: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/15773?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/pandas-dev/pandas/pull/15773?src=pr&el=footer). Last update [163d18e...a7dfe51](https://codecov.io/gh/pandas-dev/pandas/compare/163d18ed0d46eeb375f8170f1044808ff40b2a65...a7dfe519facff864c8427bd24359da97b4040446?el=footer&src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).