Animate!

Triangle and square are now spinning. The code feels pretty messy now
since state is stored at the top of the application scope. It's not
global, but that's not much better.

Note: Using `webkitRequestAnimationFrame` since `requestAnimationFrame`
is not defined in my version of chrome.