Add out-of-bounds tests for ANGLE_instanced_arrays extension

This is achieved by refactoring existing draw out of bounds tests to
resources/out-of-bounds-test.js so that they can be used both by regular
draw functions and their instanced variants.

Additionally, move tests that don't have anything to do with
out-of-bounds checks from draw-arrays-out-of-bounds.html and
draw-elements-out-of-bounds.html to gl-drawarrays.html and
gl-drawelements.html.

Some tests are added to unify testing done to drawArrays and
drawElements.
Add out-of-bounds tests for instanced attributes

Previously, there were only tests for non-instanced attributes. Add tests
where vertexAttribDivisor is set to != 0 for an attribute.
Do not expect ToInt32 overflow when value should not be converted with ToInt32

Hexadecimal literals may result in number values > 2^31 according to
ECMAScript spec 5.1 sections 7.8.3 and 8.5, and GLintptr is a long long
(64-bit) value according to WebGL IDL. Thus, supplying 0xffffffff to
drawElements offset parameter should not result in -1 and INVALID_VALUE
but rather INVALID_OPERATION. Fix this error.
Add ANGLE_instanced_arrays out-of-bounds test to test list
Restore testing drawArrays with desktop enums

This was previously covered by draw-arrays-out-of-bounds.html. This is a
more appropriate place for the test.
Merge pull request #509 from NVIDIA/angle-instanced-arrays-out-of-bounds

ANGLE_instanced_arrays out-of-bounds tests