Only draw when needed, cache background as canvas

Having problems with the mouse point lagging behind the actual cursor.
Although the FPS meter says an even 60, I don't quite believe it.