Add texStorage2D test

This adds a basic test for texStorage2D and its interaction with other texture image specification methods. Mostly error status checking, and some basic rendering checking.

Note that since texStorage2D does not accept the legacy way of specifying (unsized internalformat, type) pairs, and only accepts sized internalformats, this also exercises this aspect of a WebGL2 implementation. And while we were at it, this exercises some of the crazy new formats!

(A much more comprehensive test specifically about testing new formats and the new possibility of (unsized format) != (sized internalformat) should follow soon.
I was thinking that since here the GL wants an UNSIGNED_INT, and I am passing a specific UNSIGNED_INT value, this was independent of endianness. Endianness would kick in if I were reinterpreting a UNSIGNED_INT as an array of four bytes, or conversely reinterpreting an array of four bytes as an UNSIGNED_INT, but as far as I can see, and in my limited understanding of this aspect of the GL, this should not be the case here. Precisely, the way that this test represents binary data right away with the right type (Uint32Array for UNSIGNED_INT format) is exactly what should prevent us from running into endianness issues here.