Allow non-Class-based metric naming.

Create MetricsBuilder with MetricName rather than Class[_].
MetricName.apply(Class[_]) for standard naming.