Implemented config for formatters (-c switch).

Formatters can be configured now to change their
default behaviour.

Example:

-c csv:no_header would cause the csv formatter
not write a csv header to the file.

In order to properly configure the formatters the call
of the head() callback is delayed until the first write.