Test accuracy of dFdx and dFdy functions.

Mesa/i965 currently (as of commit 1cc3b90) has an inaccurate
implementation of dFdy() which produces the same results for every
pixel in an aligned 2x2 block.  This piglit test exposes the
inaccuracy.

v2: Use an error threshold of 1.0e-3 for both tests.
gs: Test core GS inputs on GLSL 1.50

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
gs: Test corner case for triangle strip ordering with primitive restart.

Verified using the NVIDIA proprietary driver (version 313.18) for linux.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
!UPSTREAM: Interface block redeclaration tests

TODO:
- Add more tests

- Split into a patch for the GLSL 4.10 redeclaration rules and a patch
  for other GLSL 1.50 issues (e.g. disallowing a variable inside an
  unnamed interface block to match the name of a previously declared
  global)

- Validate using NVIDIA proprietary driver