Added filters to search from filterable attributes. #6543

* Added a test for filtering and facet tally updation on filtering.
* Filters are applied to the facets as well. There is no clean way of
  applying the facet filter to all the facets.
* If an attribute is filterable, additional settings can be configured
  for it, such as displaying the facet counts, multi-selection of
  attribute values, etc.
* Refactoring done for filterable_attributes list.
* Added a boolean parameter to prevent faceting on autocomplete request.