Iterator: Add a wrapper implementing std's Iterator
Transposing the item type lets us be a std
-compatible Iterator
.
The iterator is automatically resynced when resuming iteration after
yielding Resync
. This lets some combinators like collect
and find
work properly.