Added a mechanism to call a backend-specific function when use_app() is called several times in the same session by the user. This fixes a bug in the WebGL backend where the JS code was not properly injected when the notebook was reloaded while the kernel was not.
Update() now calls draw() in the next Tornado event loop iteration in the WebGL backend.
WIP: fixing context bug.
Fixed event loop bug in the JS code.
Fixed mouse wheel.