Added more lens functionality.
Added basic state monad.