BUG: Allow __name__less callables as groupby hows (GH7929)

Allow `functools.partial` objects (and similar callables without `__name__` attributes) to be used as `groupby` functions, which also adds support along the tree (e.g. `resample`, which is specifically tested.)

Closes #7929.

This does not address the potential enhancements allowing automatic naming of duplicate-named functions (relatively minor) and the use of a Series to specify names (more useful).
Yeah, it returns None, not the empty string (`assert getname(1) is None`), if it can't figure out what do to.  You'd have to work pretty hard to have something callable which didn't have `__call__`.. I can add a comment/return None if you'd like, though.