Change configuration format to get rid of settings on OutputWriters

*Not meant to be merged, just here to open discussion*

Instead be explicit about settings for each output writer. This should allow to simplify quite a bit the code related to settings, have OutputWriter self document their options (well, you still have to look at the code).

Code does not compile and only GraphiteWriter has been changed. This is just to open discussion, not to be useable as such.

Note that this change introduce a non backward compatible change in an external interface (the config file). It might or might not be a good idea to implement. It might be possible to make that change backward compatible with not that much effort ...
Going with explicit properties will also allow to make OutputWriter immutable, easier to reason about them in a concurrent context. There are subtle bugs waiting to be discovered in the current implementation.