Make Artefact format validator dynamic

Allows easier overriding of format types
Normalise newlines for the purposes of diffs

There was a bug where because the Differ library didn't treat \r\n as equivalent
to \n, it would generate spurious diffs.
Merge pull request #94 from alphagov/normalise_newlines_in_edition_diff

Normalise newlines for the purposes of diffs
Release 5.10.1
Pin the Rails version in development.

Without this, Bundler was getting into a very long, convoluted resolution
loop trying to find compatible versions.
Explicitly require edition in classes that were missing it

To avoid problems when files are not loaded alphabetically
Merge pull request #93 from theodi/feature-lambda-format-validator

Make Artefact format validator dynamic
Fix TravelAdvice review date bug

On publishing a minor update, the review date of the previous edition
should be preserved.
Merge pull request #95 from alphagov/fix_ta_review_date_bug

Fix TravelAdvice review date bug
Version bump to 5.10.2
Add help_page Artefact kind and validate their slugs

Help pages must have slugs starting with help/
Add HelpPageEdition model
Merge pull request #96 from alphagov/add_help_pages

Add help pages
Version bump to 5.11.0
Add factory for CompletedTransactionEdition
Merge pull request #97 from alphagov/completed_transaction_factory

Add factory for CompletedTransactionEdition
Version bump to 5.11.1
Create skeleton CampaignEdition model
Add large, medium and small image attachments for campaigns
Bump the Mongoid dependency to 2.5.x onwards.

Our current Mongo drivers are 15 months out of date, which may be
showing up a bug with the connection pool handling. Version 2.5.0 and
onwards of Mongoid support the newer drivers. Versions 2.6.x and 2.7.x
claim to be backwards-compatible, so we don't want to stop apps using
those.