Content seen tracking

This PR adds analytics tracking measuring how far a user scrolls down a given page.

Pivotal: https://www.pivotaltracker.com/story/show/69606914

Tracking can be added to pages by path, sending events when the user either scrolls to a certain percentage or scrolls to show a given heading.

This also includes a fix for GOVUK.sendToAnalytics() which we (I...) seem to have broken.
Rather than using `$($heading[i])` can you use `$headings.eq(i)`. That will return a jQuery object and doesn't involve some wrapping which is slightly harder to read.

I am assuming that `text().replace(/\s/g, ' ')` is designed to remove extra whitespace? is it worth also calling `text().trim().replace(/\s/g, ' ')` on that so that if there is extra whitespace before or after the text in the heading it is still matched?