MonadRender

Addresses issue #8 although comments are welcome.
I'd leave this out - we already have common classes for this.