Add Interleave iterator

@sfackler was interested in having this adapter, so I hacked it together.
Fun fact: you can just say `let off_by_one = self.using_first as uint;`. Booleans can coerce to all primitive integral types.