Restore TraversalWrapper.iterate() to be async function.

I previously changed iterate() to be a sync function, thinking that it was like most
of the other chainable operations: a light-weight operation that simply
adds another step to the query/transformation being defined. But iterate()
actually does execute the query, so it should be an async function.
Merge pull request #21 from jimlloyd/feature/Restore-TraversalWrapper.iterate-to-be-async_83448422

Restore TraversalWrapper.iterate() to be async function.