glsl_parser_test.py: Simplify GLSLParserTest

This vastly simplifies the way that GLSLParserTest works. This
simplification has a couple of advantages. First, we call
PlainExecTest's __init__ rather than ExecTest's __init__, which is good
OO practice; second we reduce the number of regex's used, which yields
enhanced performance. In tests this reduced GLSLParserTest
initialization time by about 40%

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
framework: Move Test from core to exectest

Since Test is exclusively used as a parent for ExecTest, the two classes
should be in the same module.

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
framework: move testBinDir to exectest

This is mostly consumed by Test's children, so putting it in the same
module makes sense. This should reduce the number of imports from core
as well, since most consumers of testBinDir also make use of ExecTest or
PlainExecTest.

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>
exectest.py: Merge Test and ExecTest into a single class

Rather than have 2 base classes, let's just have one.

v2: - remove test that no longer is valid

Signed-off-by: Dylan Baker <baker.dylan.c@gmail.com>