arb_tessellation_shader: Fix large-uniforms test

If this test worked before, it was by accident.

- Declare blocks as layout(std140) for portability.
- Use vec4[] rather than float[]; According to std140 rules, the array
  stride of float[] is actually sizeof(vec4), not sizeof(float), so
  we were asking for a considerably larger UBO than intended.
- Don't insist on an error when exceeding GL_MAX_UNIFORM_BLOCK_SIZE. The
  spec doesn't require it to be emitted.
- Fetch max uniform block size before using it.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>