search: Improve typeahead search results

Fixup search for users with hits in an searchable authentication backend:

  * If there is a hit for the remote backend, include that in the search for
    local users by email address. If there is a hit locally for the same
    email address, then remove the remote hit from the search results.

Fixup typeahead results

  * Abort previous search requests when the user enters more text into the
    search fields. This makes the search box feel more consistent, and
    avoids the case where the user finishes typing and valid search hits
    never appear