Formatters now in own source files.

This is the important precursor to an extensible formatter plugin
system.