simple group aggregation
compound grouping
$sum
$avg
$addToSet
$push
$max and $min
double grouping
$project
$match
$sort
$skip and $limit
$first and $last
$unwind
double $unwind
hw_5.1
hw_5.2
hw_5.3 and hw_5.4