Good game. I wonder why they didn't use spritesheets? Each frame of the animated effects seems to be a separate PNG image.
In the end you may not have to “optimise” because it works and good enough to ship.
Reason for asking is I'm currently making a javascript spritesheet function for handling multiple animations on page, so it's top of mind. I thought everyone would be using them by now.
You could be focusing on the main app logic rather than the spritesheet functions.
Have you finished it yet? ;)