Fix WDSL typo for uploading WSDL attachments

Fix WDSL typo for uploading WSDL attachments
Use JSON schema for validating case studies

We're dog-fooding the use of a JSON Schema as a means to verify the structure of
the JSON we are creating for pushing into the content store. This is still an
incomplete representation of a case study and the schema will evolve as we move
towards a complete representation.
Merge pull request #1848 from alphagov/upload-wsdl-attachments

Fix WDSL typo for uploading WSDL attachments
content_id must be lowercase
Update copy for page to match prototype
Allow image caption to be null

There is a potential discussion to be had about whether we should exclude keys
when the value is nil on optional fields, but that's for another time.
Merge pull request #1852 from alphagov/case-study-json-schema

Use a JSON schema for validating case studies
Add organisation guids to case studies links hash.
Add organisations to case_study JSON schema.
Push all case studies to publishing API again.
Verify case study with orgs JSON is valid

Just some extra safety to make sure we're producing valid JSON.
content_id should be lowercase
Correct pattern for content_ids

See https://github.com/alphagov/content-store/blob/master/app/validators/uuid_validator.rb
Merge pull request #1851 from alphagov/orgs_in_case_studies

Add organisations to case studies content-store json.
Update copy for MHRA email alerts

Make the copy for this page match the prototype.
Update view and stylesheets to match prototype

MHRA email alerts needs to look like the prototype. Re-arrange the HTML, remove a lot of unused divs, slimline the CSS and update how the page looks.
Fix failing tests for new email signup copy
Merge pull request #1853 from alphagov/make-interstitial-like-prototype

Make interstitial like prototype
Add change_history to case study API presenter.

This creates some duplication since the top change note within the
change_history hash will be the same as the existing change_note
attribute. However, the latter is already being used by the email alerts
service; it would probably be good to change that app to use
change_history instead.
Don't send live sector tags out to Rummager.

It's OK for us to send these into the content store
as it's impossible to subscribe to a draft tag and
in the future the draft tags will be stripped by
the content store once they're moved to the `links`
hash.