Factor out +zip: and +combineLatest: logic into 1 method