Monad transformers

Identity transformer

The identity monad transformer. This monad transformer represents
computations themselves without further side effects. Unlike most
other monad transformers in this module it is not implemented in
terms of continuation passing style.