Make coalesce scalable

This commit comes from work we did to make it possible to coalesce 50k
events/second, so that riemann can be used to compute real-time
aggregations of stats on large clusters.