Fix `Context.setThrowOnWebGLError`

Modify `wrapGL` so that instead of simply copying properties, it creates read/write ES5 properties.  We could probably factor out a general helper function for wrapping (and observing) any object, but I'll do that in a future pull.

Fixes #1215 

CC @bagnell