A monad transformer library for Haskell