use requestAnimationFrame for redrawing on zoom.

much nicer, but still with a noticable delay.