Extract formatting related things as its own class
First pass at: Refactoring message dispatching into its own object.
Forgot to add the actual new classes that I've been refactoring.