I don't really understand what you mean here.

The juggling in `start()` is to avoid breaking old code that treats `MetricManager` as a publisher, of which we have a lot. I was originally going to write a new class that didn't pretend to be a manager at all and turn `MetricManager` into a wrapper around one of those and a publisher, but I couldn't find a good name for the new class.