Working other metric types (#1)

Initial work on support for counters and timers and general cleanup. Solves the main issue #1