Remove WebGL from libraries
Cosmetic: add type annotation, switch to do notation
Detect native files, build into resulting programs

The “native-modules” field in elm_dependencies.json is now read and
used when generating JS. Whitelisted native code can be used now.