Angular groups

This is ganked straight from the Events queries on the discussion page. I have a feeling this is a really common use case that we'll want to separate out somehow.