Changing the interface of discovery io to be generic, use IMetric instead of Metric wherever possible