Add support for aggregate groupings

Allows queries like:

```objective-c
NSArray* caloriesByMonth = [CTFoodDiaryEntry aggregateOperation:@"sum:" onAttribute:@"fatCalories" withPredicate:predicate groupBy:@"month"];
```

This supersedes #113, but still requires tests before it can be merged.