[Haskell] mapM with Traversables