Add combine_latest function

We don't drop them during the scan (and we can't) because we need to distinguish between nil streams and the absence of data.