concrete functor and monad transformers
https://hub.darcs.net/williamrusnack/transformers/patch/38dc1a5fe99db11b34af493ba377beeaa5aefff2