Metrics classes

Metrics classes are used to aggregate and output data during the whole simulation process.