Allow pages to handle locale and RTL

- Add ability for locale to define a right to left page
- Set the appropriate `lang` on pages
- Set a `direction` class on pages so RTL content can be styled
  appropriately
Use accessors for better encapsulation
Merge pull request #8 from alphagov/rtl-page

Allow pages to handle locale and RTL
First pass contract tests for content schemas

These tests will verify that government-frontend is able to render all the
currently available examples in govuk-content-schemas. We'll use these in the
build process of govuk-content-schemas to make sure changes to the schema do not
break the government-frontend application.

Note I've had to add a Spanish translation file because the schema examples
include a Spanish translation.
Refactor schema examples to make them accessible

Now the schema examples can be used in model and controller tests as well.
Remove redundant fixtures

The tests now use the examples from govuk-content-schemas
Wire in rake task for running contract tests

This both adds a test:contracts rake task and wires it into the default test run
so that contract tests are executed as part of the default rake task.
Raise exception if can't find govuk-content-schemas

This is a bit more user friendly then the tests blowing up with a cryptic
message.
Update README with mention of schemas
Update jenkins.sh to clone govuk-content-schemas
Merge pull request #9 from alphagov/schema-tests

Use govuk-content-schemas to run contract (integration) tests
Display notice about archived documents

- Update presenter to know if an item is archived. We know it is
  archived due to the presence of an archive notice in the details hash
- Create page_title method to automatically prepend 'Archived'. In the
  future this would use an I18n method to get a localised archive title.
  However, in the current version of this code none of the archive
  notice can be translated so leaving that as a future exercise.
Downcase format type to match sentence case
Merge pull request #10 from alphagov/archived

Display notice about archived documents
Set locale based on the content item

When displaying a translated content item, we want the locale to be set
accordingly. This ensures that we get the appropriate translated text in the
view template.
Use one global source for page direction

Now that we are overriding the global I18n.locale based on the loaded content
item, we can use a single, global helper to determine page direction in all
templates.
Remove the text_direction method from presenter

This is no longer being used as we are relying on the global page_text_direction
method to determine when content should be rendered right-to-left.
Make controller action clearer

The before_action calls were harming the comprehensibility of the code.
Test coverage for ContentItemPresenter

Adds missing test coverage for the `ContentItemPresenter`. Note that this also
fixes a bug in the any_updates? method - it was checking based on a date, which
meant that it would return false for a content item updated on the same day as
it was created.
Merge pull request #11 from alphagov/set-locale-based-on-content

Set and override global locale