Adding timer instrumentation for BatchSplitter and RollupTypeCacher

https://jira.rax.io/browse/CMD-355

* Added instrumentation for BatchSplitter and RollupTypeCacher ingestion processors
* Check if any other processors need that instrumentation 
* Check if any tests need to be added
The timer should really be initialized within the callable, otherwise the amount of time spend in queue will be included in the overall time, which will skew results.

I'd suggest ditching the `done()` method and call `actualSplitContext.stop()` directly instead. The additional method doesn't really buy us anything IMO.

I highly recommend wrapping the `splitMetricsIntoBatches` in a try block, and running `actualSplitContext.stop()` within a finally block. Ex:

    Timer.Context actualSplitContext = splitDurationTimer.time();
    try {
        return input.splitMetricsIntoBatches(batchSize);
    } finally {
        actualSplitContext.stop();
    }