Update the structure of metadata on document pages

Move from lots of desecrate bits of metadata to a more unified approach
with only a 'part of' or 'from' metadata.

Remove the old document_metadata method in favour of two helpers one for
part of and one for from. They both return an array of links which can
then be output in either the top or bottom of the page.

Updated the tests to ensure all the items which should be outputted for
each method is.

Moved the operational_field and location metadata items to the extra
metadata partial. They don't make sense in either part of or from and
are only used by one format.

Added classes on to each type of link which is going to be displayed so
we can continue to get analytical data for them.
Refactor hide extra rows

Hide extra rows didn't work so well with inline content and only really
worked with block level children. This updates hide-extra-rows to be
able to hide inline content like that found in the metadata on a
document. It adds a call to it on the new document metadata.
Use locales for new metadata

Also update all the locale files to match this change.
Update metadata link tracking for new style

Update the link tracking for the new format metadata links. Now uses
different logic for the top and the bottom because the mark up is to
different to use the same.
Localise the footer metadata headings
Only include attachment info fields if they actually exist, this was including empty strings
Change alternative-format request copy, per request. Strip whitespace on the email, as some have trailing space and it messes with the copy punctutation
Make the title/download/link of attachments more clearly a link, underlined.

Remove bold as bold+underline is a bit much, and move the alternative-format a less appealing click target (spaced from heading, and not 100% width) to avoid accidental clicks there
Include more information in the alt-format request to help those dealing with the requests

* original format that wasn't asuitable
* ask for more details of why it wasn't suitable and what would be better - should avoid some back and forth with requester
Add with_this_determiner helper and fix text on attachment preview
Check pushState for stats announcement filter

Disable the stats announcement filter script when history.pushState
isn't available. It's more important for users to have the correct url
for a search than to have ajaxy updating search results.
Merge pull request #1526 from alphagov/alternative-format-publication-request

Improvements to how alternative formats of documents are requested
Merge pull request #1525 from alphagov/disable-stats-announcement-script-when-no-pushstate

Disable stats announcement filter script when pushState unsupported
Move assignment into condition
Use non-exact matches rather than regex

Using interpolation in a regex doesn't escape the string being
interpolated. This could cause some unexpected results. Use a non-exact
match instead.
Merge pull request #1519 from alphagov/change-metadata-structure

Change metadata structure and display 

https://www.pivotaltracker.com/story/show/70352364
Fix text size rendering issue on policy group pages

The overly broad CSS rule was targetting the first child p of any element, eg, LI, ADDRESS, etc. Causing
large text all over the shop. Regardless having chatted to a designer, the make-first-p behaviour is no longer required
anyway, so remove it
Merge pull request #1527 from alphagov/fix-this-statistics-text

Add with_this_determiner helper and fix text on attachment preview
Update pivotal links to point at User Formats backlogs, not the out of date/unused one
Merge pull request #1530 from alphagov/update-pivotal-links

Update pivotal links to point at User Formats backlog