Start using the reader monad to carry auth state