In builds with lots of output, trying to reload the page partway
through the build results in thousands of websocket messages (one
per line) that each update the DOM. This can cause the browser to
freeze. Instead, use requestAnimation frame to delay the DOM
updates.