WebGL2 test for new formats and sized internalformats

Note that this contains essentially a copy of Table 3.2 in the ES 3.0.3 spec, which could be the basis of a facility for future exhaustive texture format tests (see discussion in texstorage test PR that was just merged).

This tests covers new grounds in two directions, that had to be done together:
 - checking that texImage2D allows sized internalformats, which in particular breaks the long-standing WebGL1 invariant that internalformat==format.
 - checking that texImage2D and friends accept all the formats that are core in WebGL2, and accept typed arrays of the right types for them.