Add a test ensuring bufferData can handle different sizes

The buffer-sizes test will allocate buffers of different sizes ranging
from 3 kB to 4 TB, and ensure that either 1) the buffer is allocated with
the correct size and it is cleared before usage 2) the implementation
reports a gl.OUT_OF_MEMORY error or 3) the context is lost. Buffers <= 48
MB are expected to work on all implementations.