Haskell 98 monad transformer adding a phantom type argument