A Metric is a 'quantitative measure' of something for example the number of operations pending, number of operations
 per second being executed etc.
 Each metric is uniquely identified using a name. See 
getName().
 A metric gets its content from a probe. An probe can be one of the following:
 
     - a method with the Probeannotation
- a field with the Probeannotation
- a LongProbeFunction
- a DoubleProbeFunction
 If the Metric is obtained before a probe is registered, the Metric is without probe. As long as no probe is available,
 every time the metrics needs a value, it will look up the probe in the 
MetricsRegistry.