Adding OutputFormatter base class

should `indent` just be part of the settings?