now using requestAnimationFrame to minimize layout thrashing in key places such as mouse movement over the thumbs and zooming in an image.