Convert from setTimeout to RequestAnimationFrame

Please take a look. These are the main changes: 

* add a polyfill for RAF
* fix an off by one bug with `var blits = frames[self._currentFrameNumber]`
* replace `self._timer` with `self._play`