Groupby2

Main purpose is to add kwargs to `for_each_group` to allow needed functionality in the counter.

Please review the tests, I have remove a test (simply returning at the beggining) and have commented about the test. The test fails, and I don't see how it wouldn't. I have left comments.
ah, that probably explains why the unit test was failing. I am still getting the hang of merging two files from totally different branches. I need to figure out a good way to keep them consistent -- it can be hard! (unit tests are really nice)