def search
      {}.tap do |result|
        search_words.each do |class_name, ids|
          result[class_name.constantize] = ids
        end
        limit_ids result
        load_classes result
      end
    end
def search
      {}.tap do |result|
        search_words.each do |class_name, ids|
          result[class_name.constantize] = ids
        end
        limit_ids result
        load_classes result
      end
    end
Performs a complete search.
 Clients should use :results to perform a search,
 since it caches the results.