Refactor report

Feeling things out for now. @eric, do you have any thoughts on adding `#report` to meters? It's spiked on `Counter` and `Meter` so far.
When I was looking into this I was thinking about extracting this subthread to method called `flush` so that any `Reporter` would be able to send metrics at any time if there's such need.