Refactor atom feeds to use common partial for entries

This involved adding a new presenter class for the index views so that the data for the index view quacks like the data for the individual country view.
Change presentation of atom summary now it's plain text.

Use simple_format to create some structure.
Remove old helper that's now unused.
Add content link to atom summaries

Govdelivery isn't pulling out the atom link and is only using the body in email alerts
Remove route for video part of guide

This functionality was removed a while ago.  with this route in place, a
MissingTemplateException is caused when hitting this route.  Removing
the route will make it behave like any other non-existent part of a
guide, and redirect to the start of the guide.
Replace all uses of PublicationPresenter#type with #format

Format is the language we use everywhere to describe the different content
options for gov.uk. Type is an awkward bit of technical debt, so we should
be avoiding it where we can.
Make PublicationPresenter responsible for current_part

Reduces the number of instance variables and opens a path to more encapsulation.
Tidy up next/previous part logic

Increase the encapsulation by bringing more of this logic into the PublicationPresenter
and thereby make the view code more readable. Also pull some shared view code out into
a partial.

The PublicationPresenter is now becoming quite a complex class, but it remains a more
natural home for this code. We do still need PartHelper but are hopefully reducing our
reliance on it.
Remove redundant artefact local from publication_metadata calls

We don't use this any more. Removing it here because I'm looking for anything
that breaks the PublicationPresenter encapsulation and that added confusion.
Change page_title to only take a publication

This method was asking for an artefact it didn't use. Let's not do that.
Make artefact a local variable not an instance variable

It's no longer required in any views and is wrapped up by the
PublicationPresenter so there's no need to expose it. It's good
to keep the number of instance variables low to help us be clear
about what the actual API of our controllers is.
Remove some duplication in preparing publication data

The jobsearch and publication methods overlapped enormously. Their common
code is now handled by a single method which in practice replaces the entire
jobsearch method. That new method is a bit ugly but it can now be cleaned
up in one place rather than two.
Get the format from the publication not the artefact

This is more consistent, and also stops some tests failing. Also
tidies up a few other places where we should have been asking
the publication for the artefact.
Make licence and local transaction handling more consistent

Replace the specific instance variables with a general one for either format.
This makes it easier for us to then move some code around to make the logic
flow a little clearer.
Merge branch 'master' into break-up-publication-method

Conflicts:
	app/controllers/application_controller.rb
	app/controllers/root_controller.rb
	app/controllers/travel_advice_controller.rb
	config/routes.rb
Break appropriate_snac_code_from_location into two methods

This method was doing two things: acting as a factory for an identifier
class, and then using it to find the snac. Breaking it into two methods
makes that a little clearer at the expense of increasing the number of
methods in this controller related to snac codes - this may be something
we should extract?
Fix calls to fetch_artefact

Broken in bad merge.
Fix appropriate_snac_code_from_location and identifier_class_for_format inconsistency

I changed the arguments to the methods but not what the code expected.
Break up RootController#prepare_publication_and_environment

This new method was quickly soaking up a lot of complexity. We can at
least break that into a few smaller methods.

Also added note for consideration about whether we can deal with 'done'
slugs outside the controller.
Add note about need to move redirect for travel advice API

Not making the actual change here as it's not what this
branch is for.