Reports

This is the initial reports @rcrichton and @devcritter please take a look.
`reportMap` is actually an array, could you rename this. Or you could change this to be an actual map. Either way is fine.