PERF/REF: groupby sample
- [x] closes #34483
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [x] whatsnew entry

Benchmarks:

```

       before           after         ratio
     [d61ace50]       [7fb839ce]
     <master~4>       <gb_sample>
-         116±5ms         29.8±3ms     0.26  groupby.Sample.time_sample
-        808±20ms         75.9±1ms     0.09  groupby.Sample.time_sample_weights

```

very nice @mzeitlin11 