I'm looking for a way to use mapAccumL in the IO monad - something like an analog of mapM, i.e. with this type signature:

`mapAccumLM :: (Monad m) => (a -> b -> m(a, c)) -> a -> [b] -> m(a, [c])`

Any easy way to do this?