move Vertex Array Object (VAO) functionality into own module
(but the import is commented out since we are not using them right now anyway)
move vertex layout functionality to own module
fix reference to old water layers in color halftone demo
move GL line rendering to own module
(but we're not using it right now so it is not imported anywhere, it was previously used for debugging, may use it for that again)
move GL program wrapper into own module
add a #define for each custom shader transform, to allow for conditional behavior
(such as default/fallback behavior that a transform can override)
remove old environment map test mode
don't assume mode.update() operates on default mode program
demos: put selected feature label on map container to hide overflow
make the cross-domain web worker workaround optional
and also make it work on Safari (which has window.URL prefixed as window.webkitURL)
workers: pass log messages back to main thread, since console.log isn't always available in a worker
fixes Safari
track GL programs by id and optional name, and output in processed source code, for debugging