Previously we were stripping all whitespace. Instead, just strip leading+trailing
whitespace, split the remaining search into individual terms which we search
for independently.
Items are grouped by the number of terms they match, then sorted
alphabetically.