Pull out separate model for announcement date

This is the first step towards a model where the release date can be
changed and logged with an audit trail.
Rework document finder

This is so that a separate form can be used for the document-finder
and the thing that is using it.
Rework stats announcements workflow

The first release will be for ONS users only whilst we road-test
things so listing announcements on a user's dashboard won't make sense
in the short term. This adds a statistics announcement index page and
updates the creation and editing of announcements to work around it.
It also adds a show page to accomodate the extra workflows that users
will perform on announcements.

Still to come is the functionality that allows users to change the
announced release date.
Move edition state filtering into filterer

This is a better place for it as it means the sanitisation is always
performed rather than just when the Admin::EditionFilter is
used in Admin::EditionsController.
Document linker returns pre-publication editions

You should never have to link an announcement to a published edition
as there would be no point in announcing it if it's already been
published!
Adjust search indexing for StatisticsAnnouncement

This relies on the new "metadata" property added to the rummager
schema.
Rename association ready for allowing date change
Basic workflow to change dates on announcements
Encapsulate date change validations into new model

The StatisticsAnnouncementDateChange model will encapsulate all the
validation logic required for date changes. Note that although it
inherits from StatisticsAnnouncementDate, it is not using STI.
Changing the date re-indexes the announcement
List change note when present
Include date status on announcements index page
List history of announcement release dates