Update Metric class API and subclasses