WIP: Decouple measuring of results from reporting results using formatters.

The idea here is to use similar approach that you see in libraries like simplecov, rspec or cucumber, where you can specify different formats (either pre-built or custom) from the command-line.

So, you could do something like:
```
metric_fu -r --format json --out '/path/to/output.json'
```
or
```
metric_fu -r --format html --format csv --out '/path/to/my.csv'
```
or perhaps even something like...
```
metric_fu -r --format redis
```
I think it opens up some interesting possibilities.

My intent is to keep everything backward-compatible (and I think so far, so good), so running metric_fu without specifying a format will use the built-in html formatter which uses the awesome templating / graphing stuff and produces your standard metric_fu report.