Enable GL_KHR_shader_subgroup properly

(and GL_NV_shader_subgroup_partitioned) based on GL/ES version
instead of predicating it on vulkan SPV generation

Also add AST testing.
The glsl.450.subgroup* files are largely the same as the spv.subgroup*
The glsl.es320.subgroup* files are the same as the 450 versions, but modified to be ES compatible.
diff --git a/gtests/AST.FromFile.cpp b/gtests/AST.FromFile.cpp
index e2a8341..b64b415 100644
--- a/gtests/AST.FromFile.cpp
+++ b/gtests/AST.FromFile.cpp
@@ -236,7 +236,39 @@
         "precise_struct_block.vert",
         "maxClipDistances.vert",
         "findFunction.frag",
-        "constantUnaryConversion.comp"
+        "constantUnaryConversion.comp",
+        "glsl.450.subgroup.frag",
+        "glsl.450.subgroup.geom",
+        "glsl.450.subgroup.tesc",
+        "glsl.450.subgroup.tese",
+        "glsl.450.subgroup.vert",
+        "glsl.450.subgroupArithmetic.comp",
+        "glsl.450.subgroupBasic.comp",
+        "glsl.450.subgroupBallot.comp",
+        "glsl.450.subgroupBallotNeg.comp",
+        "glsl.450.subgroupClustered.comp",
+        "glsl.450.subgroupClusteredNeg.comp",
+        "glsl.450.subgroupPartitioned.comp",
+        "glsl.450.subgroupShuffle.comp",
+        "glsl.450.subgroupShuffleRelative.comp",
+        "glsl.450.subgroupQuad.comp",
+        "glsl.450.subgroupVote.comp",
+        "glsl.es320.subgroup.frag",
+        "glsl.es320.subgroup.geom",
+        "glsl.es320.subgroup.tesc",
+        "glsl.es320.subgroup.tese",
+        "glsl.es320.subgroup.vert",
+        "glsl.es320.subgroupArithmetic.comp",
+        "glsl.es320.subgroupBasic.comp",
+        "glsl.es320.subgroupBallot.comp",
+        "glsl.es320.subgroupBallotNeg.comp",
+        "glsl.es320.subgroupClustered.comp",
+        "glsl.es320.subgroupClusteredNeg.comp",
+        "glsl.es320.subgroupPartitioned.comp",
+        "glsl.es320.subgroupShuffle.comp",
+        "glsl.es320.subgroupShuffleRelative.comp",
+        "glsl.es320.subgroupQuad.comp",
+        "glsl.es320.subgroupVote.comp",
     })),
     FileNameAsCustomTestSuffix
 );