BUG: Groupby.nth includes group key inconsistently #12839
- [x] closes #12839
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

When the group selection changes, the cache for `_selected_obj` needs to be reset so that `nth`, `head`, and `tail` can return consistent results.

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13316?src=pr) is **84.34%**

> Merging [#13316](https://codecov.io/gh/pydata/pandas/pull/13316?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will increase coverage by **<.01%**

``` diff
@@             master     #13316   diff @@
==========================================
  Files           138        138          
  Lines         51126      51133     +7   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          43122      43130     +8   
+ Misses         8004       8003     -1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last updated by [2134b63...16f5cd3](https://codecov.io/gh/pydata/pandas/compare/2134b6307928b526776473d641f88d5d15a6d025...16f5cd3712affbab4ccffe32d90b3ac600698229)
 @adneu ok just some minor comments. ping when updated / green.
 @adneu Do you have some time to update this?
 @adneu ok only minor changes. can you update
 Sorry for the delay. I added some docstrings and tests based on your comments. Pls check out the latest commit and let me know if ok.
 naming change but otherwise lgtm. ping when green.
 @adneu Looks good!
 @jreback good to go?
 thanks @adneu 
