Use doubles in millisecond metric recordings
Currently, we have the following method signature:
int64_t Timer::msecs(reset_t reset);
However, as this is an integer, this is prone to rounding errors (for anything < 1msec). This in turn presents problems when recording these values into OpenTelemetry histograms. Instead of falling into the (0-5] bucket, they fall into the [.., 0] bucket. This should of course not happen, because this bucket is not something we want to visualize.
As such, this method should be updated to return double instead, ensuring that we don't see these truncation errors.