A state monad that runs the state in reverse through the computation