Guard against misuse of MetricsSystem methods.
Merge pull request #10 from JoshRosen/metrics-system-cleanup

Add defensive checks to MetricsSystem methods; make more methods private