RWST

I found, that there's a `Control.Monad.State` implementation, but there's no `Reader`, `Writer`, and `RWS`. So I've added them.