title: Combining Observables - waiting till all observables fire
body: <p>I have this code:</p>
  
  <pre><code>let $obs = Rx.Observable.merge(
      this.obsEnqueue,
      Rx.Observable.timer(2000)
  );
  </code></pre>
  
  <p>but this isn't doing want I want - want I would like to do is wait until both events fire (an event from <code>this.obsEnqueue</code> and the event from <code>Rx.Observable.timer()</code>).</p>
  
  <p><code>merge</code> will most likely create a new Observable that will fire when the first event happens from all the observables are passed in. I would like to create a new observable that will fire after all observable passed in have fired.</p>
  
  <p>So more generally:</p>
  
  <pre><code>let $obs = Rx.Observable.X(
      Rx.Observable,    // wait
      Rx.Observable,    // until
      Rx.Observable,    // all of these
      ...
      Rx.Observable     // fire the next event
  );
  </code></pre>
  
  <p>How can I do this? What is X?</p>