concrete functor and monad transformers

#36Transformers no longer compatible with GHC 7.8 and earlier

On 7.8, I get:

Control/Monad/Trans/Select.hs:84:10:
    Could not deduce (Functor m)
      arising from the superclasses of an instance declaration
    from the context (Monad m)
      bound by the instance declaration
      at Control/Monad/Trans/Select.hs:84:10-47
    Possible fix:
      add (Functor m) to the context of the instance declaration
    In the instance declaration for `Applicative (SelectT r m)'
Control/Monad/Trans/Select.hs:85:19:
    Could not deduce (Applicative m) arising from a use of `pure'
    from the context (Functor (SelectT r m), Monad m)
      bound by the instance declaration
      at Control/Monad/Trans/Select.hs:84:10-47
    Possible fix:
      add (Applicative m) to the context of
        the type signature for pure :: a -> SelectT r m a
        or the instance declaration
    In the second argument of `(.)', namely `pure'
    In the expression: lift . pure
    In an equation for `pure': pure = lift . pure
Control/Monad/Trans/Select.hs:93:10:
    Could not deduce (Functor m)
      arising from the superclasses of an instance declaration
    from the context (MonadPlus m)
      bound by the instance declaration
      at Control/Monad/Trans/Select.hs:93:10-51
    Possible fix:
      add (Functor m) to the context of the instance declaration
    In the instance declaration for `Alternative (SelectT r m)'
Control/Monad/Trans/Select.hs:101:14:
    Could not deduce (Functor m) arising from a use of `pure'
    from the context (Monad m)
      bound by the instance declaration
      at Control/Monad/Trans/Select.hs:99:10-41
    Possible fix:
      add (Functor m) to the context of
        the type signature for return :: a -> SelectT r m a
        or the instance declaration
    In the expression: pure
    In an equation for `return': return = pure
    In the instance declaration for `Monad (SelectT r m)'

If this was intentional, please update the base bound!