PERF: Improve performance of cut with IntervalIndex bins
- [X] closes #27668
- [X] benchmarks added / passed
- [X] passes `black pandas`
- [X] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [X] whatsnew entry

ASV output:
```
       before           after         ratio
     [143bc34a]       [d531e7b0]
     <master>         <perf-cut-ii>
-            198M             122M     0.62  reshape.Cut.peakmem_cut_interval(1000)
-            197M             122M     0.62  reshape.Cut.peakmem_cut_interval(4)
-            197M             122M     0.62  reshape.Cut.peakmem_cut_interval(10)
-      2.11±0.02s          910±2ms     0.43  reshape.Cut.time_cut_interval(1000)
-      1.95±0.01s          761±2ms     0.39  reshape.Cut.time_cut_interval(4)
-      1.95±0.03s         763±10ms     0.39  reshape.Cut.time_cut_interval(10)

SOME BENCHMARKS HAVE CHANGED SIGNIFICANTLY.
PERFORMANCE INCREASED.
```
very nice @jschendel 