Cleanup
TODO
Changed methods name
Added error_()
We need a canvas only here
Added preliminary support for WebGL optimization

For internal use only!