BUG/FIX: groupby should raise on multi-valued filter

closes #7870
My argument against item is the same as for the general case, you could have some groupby filter written as above chugging away fine and then one day you get dupes in a group (return value > 1) and an exception. The docstring says returns True or False, raising immediately and basically asks the user to make a reduction decision all/any/item/whatever.

I guess I don't know how widespread this (mis?)use is, so we probably do have to support it...

>Also, this is totally hidden from the user, they wouldn't really be able to call item anyway

Or maybe I'm missing something, I thought this part is basically rewriting (in the case f(x) is a boolean series):

    g.filter(f)
    # as
    g.filter(lambda x: f(x).item())