title: .first() operator affects other subscriptions
body: <p>Example code:</p>
  
  <pre><code>const test1$ = Rx.Observable.interval(1000)
  const test2$ = Rx.Observable.interval(1000)
  
  // This subscription need to get every value continuously
  const firstSub = test2$
    .do(val =&gt; console.log('Service: ', val))
    .subscribe()
  
  // This subscription need to get only first value and stop
  const secondSub = Rx.Observable.combineLatest(test1$, test2$)
    .do(val =&gt; console.log('Method: ', val))
    .first()
    .subscribe()
  </code></pre>
  
  <ul>
  <li><strong>First subscription</strong> starts right after app startup.</li>
  <li><strong>Second subscription</strong> started by click event (so it could run a few times).</li>
  </ul>
  
  <p>When I use either <code>.first()</code> or <code>.take(1)</code> operator, somehow first subscription get affected by it too, and stops getting values.</p>
  
  <p>How can I change that behavior to still get values from first subscription, while only get one value from the second subscription and stop?</p>