Add functionality to create a FBO with multisample texture attachment

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Add test to verify the accuracy of multisample scaled blitting

This test verifies the accuracy of scaled blitting on Intel's i965
drivers by comparing the output images by:
1. multisample buffer to single sample buffer scaled blit using
   EXT_multisample_framebuffer_blit_scaled extension.
2. multisample buffer to single sample buffer scaled blit implemented
   using glsl shader program.

Note: This test is specific to Intel's implementation of extension
EXT_multisample_framebuffer_blit_scaled and may not produce expected
results on other hardware. Test passes with all of the scaling factors
between 0.1 to 2.5 on Intel's i965 drivers and NVIDIA's proprietary
linux drivers.

V2: Add testing for scaled blitting using multisample framebuffer with
    renderbuffer attachment. This helps verify that mcs_fetch() is
    happening correctly for each sample.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
Add test to verify the error conditions in ext_multisample_framebuffer_blit_scaled

Test passes on Intel's i965 drivers.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Paul Berry <stereotype441@gmail.com>
generate-glean-tests.py: PEP8 compliance
piglit-merge-results.py: PEP8 compliance
piglit-print-commands.py: PEP8 compliance
piglit-run.py: PEP8 Compliance
piglit-summary-html.py: PEP8 Compliance
piglit-summary.py: PEP8 compliance
core.py: PEP8 Compliance
exectest.py: PEP8 compliance
gleantest.py: PEP8 compliance
glsl_parser_test.py: Remove bad vim modeset line

Removes a vim modeset line that is not PEP8 compliant
glsl_parser_test.py: PEP8 compliance

There is one non-compliance, a docstring comment that is longer than 79
characters. However, this is a comment for a c-style file, and there is
no way to break it without changing its meaning.
log.py: PEP8 compliance
patterns.py: PEP8 compliance

There are four lines in a docstring that are not compliant, they are c++
code, and as such should not be wrapped.
shader_test.py: PEP8 compliance
summary.py: PEP8 compliance

one line is not compliant. It's one character over the 79 character
limit required by PEP8, but breaking it results in very ugly forced
looking code, so it was left.
threads.py: PEP8 compliance
builtin_functions.py: PEP8 compliance

This patch creates a massive amount of churn because of a large number
of very long lines, terrible mixed spaces/tabs indents, and
missing/overkill whitespace.

This does leave a few PEP8 issues:
 - one line that is 80 characters, there is no good way to split this
 - a list definition with unnecissary whitespace: this list is much
   easier to read with the white space so it was left