RFR: Refactor DataType into own file. Make it enum. 

This PR tries to do two things:

1. Moves Metric.DataType to its own file and makes it an enum 
2. Completely gets rid of MetricData.Type (used for providing hints for API users to parse the payload) and expects a simple string for type.