intel: clean up cmd shader cache

Mainly to remove intel_cmd_shader.  There were intel_shader,
intel_pipeline_shader, and intel_cmd_shader.  When we saw a variable named,
say, fs, we could not relate it to its type immediately.  Getting rid of
intel_cmd_shader makes that easier.

This also gives us a nicer API.  The cache is now transparent and never fails
cmd building.
diff --git a/icd/intel/cmd.c b/icd/intel/cmd.c
index 7ba32aa..89eb583 100644
--- a/icd/intel/cmd.c
+++ b/icd/intel/cmd.c
@@ -229,8 +229,9 @@
     for (i = 0; i < INTEL_CMD_WRITER_COUNT; i++)
         cmd_writer_reset(cmd, i);
 
-    if (cmd->bind.shaderCache.shaderArray)
-        icd_free(cmd->bind.shaderCache.shaderArray);
+    if (cmd->bind.shader_cache.entries)
+        icd_free(cmd->bind.shader_cache.entries);
+
     memset(&cmd->bind, 0, sizeof(cmd->bind));
 
     cmd->reloc_used = 0;