Dynamic Summer Addition
Don't use the built in CMS, mutable local one with synchronized around it for perf
Dynamic summer to support configuration options and tested/benchmarked harder.

Have options to decide what should be a HH, if we should reset our metrics, and what frequency to update the mutable state
Moved some code around, added some comments regarding threading. Cleaned up types
Remove the 1% comment, not useful.

Move the key type to be an Int rather than a Long
Clean up the dynamic summer code a bit
Merge remote-tracking branch 'origin/develop' into feature/dynamicSummer

Conflicts:
	algebird-util/src/main/scala/com/twitter/algebird/util/summer/AsyncSummer.scala
Renamed dynamic summer to HeavyHittersCachingSummer
Merge pull request #314 from twitter/feature/dynamicSummer

Dynamic Summer, may use heuristics to decide not to keep a tuple in a buffer for aggregation.