lazy: zip multiple streams