Currently the timer metrics served from the internal `HdrReservoir` never reset so when looking at a 99th percentile latency metric we are looking at the 99th percentile of all values recorded since the session was initialized.
This is typically not the behavior expected by users. Instead, users expect that these percentiles only consider the latest X seconds/minutes. We should get rid of `_runningTotals` which is a histogram that contains all values and just return the `intervalHistogram` returned by the `Recorder`.
We should also consider implementing a snapshot caching mechanism similar to the one used by the `HdrReservoir` of the java driver which allows the "sliding window" of the timer metrics to be adjusted independently of the reporting interval used. See https://github.com/datastax/java-driver/blob/9f0d89799a8a1e4cd1022dd7c43333924c36a648/core/src/main/java/com/datastax/oss/driver/internal/core/metrics/HdrReservoir.java#L129-L135
With the caching mechanism we should also add a setting to allow users to specify how long each snapshot should be cached. See https://github.com/datastax/java-driver/blob/2863100b736f01b77f7347d17536da6f151b4583/core/src/main/resources/reference.conf#L1202-L1218