Make agg-step return the aggregator
Make agg-finish return the aggregator
Add agg-step and agg-finish helpers to work with a list of aggregates
Remove aggregate/agg-val and make aggregate return finished values

Add aggregate* to be the driver and not exposed publicly (for now
at least).
Add basic tests for aggregate