concrete functor and monad transformers

## #76Reverse functor consistency

You mean that Reverse should be called ReverseT? In that case ReverseT Identity would be equivalent to Identity.

As of now

`Reverse f a`

is named with the scheme that we usually use to name monad transformers on the identity monad. If instead we chose to rename what is now`Reverse f a`

to`ReverseT f a`

and then add a new type synonym`type Reverse = ReverseT Identity`

we would be consistent with the rest of the monadic transformers such as`StateT`

,`AccumT`

or `MaybeT as some examples. Reverse is in fact a monad transformer which leads me to believe this is appropriate.Furthermore, we could provide an instance of

`MonadTrans ReverseT`

.