[Haskell-cafe] ListT version leveraging Traversable