Add lens composition for updates without state monad