metrics.yaml support

The metrics.yaml file can be included in a charm to declare the metrics the charm will report. If the file is not present, no metrics will be allowed to be sent from the unit (not even built-in ones).
I think this is not quite right. You'd want to check as follows:
1. If it's a path error, set dir.metrics to the default. A type assertion check will catch this.
2. If its some other error, return nil, err.
3. Otherwise we've opened a good file handle. Read & close.