This mostly moved to FindUtils, except the logic for the selectedEntry which is in SearchModel.