Add clamping texture offsets to WebGL 2

This solves one instance of undefined behavior. There is a performance
cost, but it does not seem prohibitively large.
Allow GLSL 3.0 in WebGL 2

This was implied before, but needs to be explicitly specified. GLSL 3.0
restrictions concerning loops and array indexing are not in this commit,
I'm not aware if it has been decided whether they remain the same.
Merge pull request #672 from NVIDIA/webgl2-allow-glsl-3

Allow GLSL 3.0 in WebGL 2
Merge pull request #671 from NVIDIA/webgl2-texture-offset

Add clamping texture offsets to WebGL 2