Fuse simple mappings before resolving GroupBy.

This enables the use of multiple mapping steps for extracting
aggregated values from groups.

Test in AggregateTest.testMultiMapAggregates. Fixes issues #186, #187,
#189.

Review by @cvogt