Merge pull request #6628 from jreback/fillna_limit

BUG: Bug in fillna with limit and value specified
BUG/API: allow TimeGrouper with other columns in a groupby (GH3794)
CLN/API: replace groupby.CustomGrouper with Grouper
         rename internally Grouper to BaseGrouper to avoid conflict
         TimeGrouper to now inherit from Grouper
DOC: update groupby docs for using pd.Grouper
CLN: refactor of groupby/resample to handle Grouper
     in a more elegant / cleaner way by keeping internal
     groupby state inside the Grouper rather than passing
     around lots of results