bug in groupby when key space exceeds int64 bounds
closes https://github.com/pydata/pandas/issues/9096

also improves performance when there is `int64` overflow; complete groupby benchmarks [here](https://gist.github.com/behzadnouri/e142fbd65f41357a7360).

```
-------------------------------------------------------------------------------
Test name                                    | head[ms] | base[ms] |  ratio   |
-------------------------------------------------------------------------------
groupby_int64_overflow                       | 637.6967 | 3021.1190 |   0.2111 |
-------------------------------------------------------------------------------

Ratio < 1.0 means the target commit is faster then the baseline.
Seed used: 1234

Target [d6e3cb7] : bug in groupby when key space exceeds int64 bounds
Base   [391f46a] : BUG: allow for empty SparseSeries SparsePanel constructors (GH9272)
```

@behzadnouri this looks gr8! thanks
