Cache generated gifs.
Add simple pub/sub model to avoid generating the same gif.
Use minified three.js and cleanup.