PERF: unstack 2 the unstackening
```
from asv_bench.benchmarks.reshape import *
self2 = Unstack()
self2.setup("category")

%timeit self2.time_full_product("category")
31.3 ms ± 2.23 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)  # <- master
20.1 ms ± 304 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)  # < PR
```

Orthogonal to #43335