Concatenating iterables without allocating memory

@ChrisRackauckas, ok this works for me, I need to read implementations to understand what is going on

@time Iterators.flatten(zip(signal1, signal2)) |> extrema
  0.080821 seconds (8 allocations: 256 bytes)