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).
similar indentation suggestion here.
Also, please use os.IsNotFound instead of os.PathError.

    if err == nil {
       ....
    } else if !os.IsNotFound(err) {
         return nil, err
    }