Adding OutputFormatter base class

Input formatter is using `DelegatingStream` to wrap the original stream, but here we would be providing the original stream