Added an error for the 405 error code
Made Groups help out a bit with their serialization
Now throwing some semantic errors
Some changes to make the boilerplate less onerous
Added information about the groups for each list
Added assertions that fill in some holes in getGroups
Allow unauthorized exceptions to have causes
Exposed the group api to the world.

It all seems like it's working. Woot.