started to give the mysql search the same api as ES
make mysql and ealstic search have the same API
remove forwardable and slim down the api surface of docfilter
fake search implementation and added whitehall searchbackend
fix api,
make policies controller more like the other search controllers
typo
fix functional tests, sill cache time failing
Fix unit tests for mysql-based document filter.
Refactor mysql document filter test
Introduce a base class for the 3 DocumentFilter implementations
Tidy build_filter in announcements, policies, & publications controllers
Put all the tests for presenter objects into test/unit/presenters

Make sure they all are PresenterTestCase subclasses and fix any errors that occur because of that (database access mostly).  Add rake test:presenters so we can just run them too, if we're so inclined.
Use FakeSearch by default in test

For those tests that want to exercise what they do with "real" search results, we also provide NotQuiteAsFakeSearch.  This supplies a Rummageable implementation to allow storing content and a DocumentFilter implementation to allow fetching content.  This can be invoked at the class level with with_not_quite_as_fake_search.
Send the publication_type_id of Consultations to Rummageable
Use FakeSearch by default in cucumber

Allow for tagging a feature @not-quite-as-fake-search to ask it to use NotQuiteAsFakeSearch (Rummageable and DocumentFilter) if we need it.

Note: This means enabling mocha in our cucumbers, not sure how we feel about that.
Implement local government relevance filtering in NotQuiteAsFake
Add search_format_types to the editions searchable interface

This is an array of values that allows us to tag documents as their type and any grouped types that might cut across multiple classes (e.g. StatisticalDataSets and Publications with a PublicationType that is in PublicationType.statistical are both tagged in search_format_types with publicationesque-statistics).

Conflicts:

	app/models/case_study.rb
Editions can generate their own search_format_type programatically

Most instance methods use the class method and add it to the result from the superclasses.
Fill in the blanks in the rummager implementation of DocumentFilter

We make use of the search_format_types to do filtering instead of a combination of format and the various xxx_type fields.