Resolve race condition with quick changes to search terms

* If a search query is outstanding, then the term is changed, the
  second query may return before the first.  Then, when the first
  returns, it will overwrite the (valid) results from the second.  This
  change increments an ID to ensure results are show only for the
  correct search query.