BUG: Groupy dropped nan groups from result when grouping over single column
- [x] closes #35646
- [x] closes #35542
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

When grouping over 2 columns with only ``nans`` this raised an error previously. Realised this, when running tests for my fix, because this case was tests with one grouping column. Added test to cover fixed behavior for more than one column.

cc @mroeschke  Takes same path as two or more grouping columns now.
@rhshadrach Thanks very much for the review. Just a couple of questions about your review above. Could you also add a unit test for the `groupby.rolling` case here? https://github.com/pandas-dev/pandas/issues/35542#issue-672765849 @mroeschke Done cc @rhshadrach I had time to look this through. Keys is always a list of some kind of index. But we can not import the Index class because of circular imports. I left it at ABCIndex for now. Do you have a suggestion? The return seems to be alway a Dict with arrays looks good, can you merge master and ping on green; there maybe a conflict with another PR for whatnew, let's see.

also cc @mroeschke  Thanks @rhshadrach  I really appreciate your help.

Type hint should work now @phofl One tangential note: I mentioned "when dealing with circular imports" above; I should have said when importing solely for type checking, imports should go in the `if TYPE_CHECKING:` block.That is, this should be used whenever possible, even when not dealing with circular imports. Thanks very much, that makes sense  CI / checks are failing.  merge master and ping on green-ish @phofl conflict needs resolved. Done @jreback Failure seems unrelated, because merge before that was green merged master @jreback could be merged LGTM. Mind merging in master one more time? @mroeschke 
Done lgtm can merge on green Thanks @jreback for resolving conflicts. Resolved another. Failure seems unrelated. thanks @phofl 