Improve scrolling

The JavaScript checking elements marked as 'sticky' to stop them overlapping the footer was causing problems:

https://govuk.zendesk.com/tickets/58065

In response to the concept of the timers that fire every 25ms being the problem I have:

1. made the timers into the scroll action so they only fire when this happens
2. swapped setInterval out for requestAnimationFrame where possible