Analytics

The goal of this request is two-fold, both of which pieces are rather simple:
(1) To make sure our standard analytics, as they currently exist, are used whenever appropriate
(2) To allow end-user introduction of custom analytics into any binning process.

Part 1 requires moving responsibility for constructing analytics from the AnalyticExtractor to the Value and Index extractors.  This, in turn, requires moving responsibility for constructing appropriate accumulators from the analytic to the binning program (though all it has to do is make appropriate calls into the analytic).

This last ends up requiring a host of changes everywhere.

There are a bunch of further changes I'd like to make to this (some naming refactoring, and I'd like to come up with a more concise, easier way of initializing the analytic accumulators), but I'm submitting at this point, and saving a bit for later because, this does make writing accumulators easier (it alleviates the need for the GlobalMetaData map, which was a big pain), so I want to get it in stream sooner rather than later.