what else implements IMetric, or would in the future? would those things also want to be checked for type/unit issues?