• script: Detect when the page is using `requestAnimationFrame()` for

    non-animation purposes and back off to a timer if so.
    
    After this patch, when the page calls `requestAnimationFrame()` too many
    times in the row without actually mutating the DOM, further calls to
    `rAF` will actually perform the moral equivalent of `setTimeout(16)`.
    This saves a lot of CPU time compared to actually waiting for the
    vertical blanking interval, because waiting for that requires us to draw
    the page.
    
    Reduces CPU usage drastically on nytimes.com, which has a perpetual
    `requestAnimationFrame()` loop that checks whether ads are in view.
    pcwalton committed Dec 2, 2016