Address copying element array buffers in WebGL 2

Copying into element array buffers from buffers that contain other data
is disallowed in order to make sure index validation does not require
reading back buffer data from the GPU to the CPU. Copying element array
buffer data into other element array buffers can still be desirable, so
previous restrictions are relaxed so that element array buffers can be
bound to COPY_READ_BUFFER and COPY_WRITE_BUFFER.

For issue #543.