intel: remove unused internal dispatch tables

Remove intel_dispatch_get() and the two dispatch tables.  Embed

  void *loader_data;

instead of

  const XGL_LAYER_DISPATCH_TABLE *dispatch;

at the beginning of intel_gpu and intel_base, as that is what the loader
really wants.

Add a magic to intel_base to keep intel_base_is_valid() working.

v2: do not set loader_data of new objects
diff --git a/icd/intel/gpu.h b/icd/intel/gpu.h
index d95cc6b..70f1ee1 100644
--- a/icd/intel/gpu.h
+++ b/icd/intel/gpu.h
@@ -55,7 +55,8 @@
  * intel_gpu is the only object that does not inherit from intel_base.
  */
 struct intel_gpu {
-    const XGL_LAYER_DISPATCH_TABLE *dispatch;
+    /* the loader expects a "void *" at the beginning */
+    void *loader_data;
 
     struct intel_gpu *next;