shotop: breaks out Formatter subclasses