WebGL and Typed Arrays Support

This is a cleaned up, squashed version of #13 adjusted according to suggestions kindly provided by @sjrd.