Returns shallow copy with item1 & item2 swapped
ZipItem<I2, I1> swap() { return ZipItem(item2, item1); }