title: Interleaving two numpy index arrays, one item from each array
body: <p>I have two ordered numpy arrays and I want to interleave them so that I take one item from the first array, then another from the second, then back to the first - taking the next item that is larger than the one I just took from the second and so on.
  Those are actually arrays of indices to other arrays, and I'll be ok with operating on the original arrays as long as the operation is vectorized (but of course working on the index array as a vector operation will be awesome).</p>
  
  <p>Example (ok to assume that the intersection of arrays is empty)</p>
  
  <pre><code>a = array([1,2,3,4,7,8,9,10,17])
  b = array([5,6,13,14,15,19,21,23])
  </code></pre>
  
  <p>I would like to get [1,5,7,13,17,19]</p>