Added support for a metrics collections

Added a metric collection for storing unit metric in the state server

Only support for:

* adding new metrics
* getting lists of unsent metrics
* setting the sent flag
@cmars I wonder if that's a good idea. What would happen if the charm dies between the metric being generated and us adding the metric to state? Also I this feels like premature optimisation. What do you think?