Metrics

This is the initial version of the metrics API @rcrichton  and @devcritter please take a look and tell me what you think
The indentation of this isn't correct.