xgl: update xglDbg.h for XGL_INSTANCE

Add XGL_INSTANCE as the first parameter of xglDbgRegisterMsgCallback(),
xglDbgUnregisterMsgCallback(), and xglDbgSetGlobalOption().

The loader is simplified.  loader_log() is modified to always output to
stderr.

glave is modified to register its message callback after xglEnumerateGpus(),
and xglDbgUnregisterMsgCallback() is called only before xglDestroyInstance().

XGL_INSTANCE is ignored by the layers and the driver for now.

Bump up API version to XGL_MAKE_VERSION(0, 56, 1).
diff --git a/tools/glave/scripts/vk_generate.py b/tools/glave/scripts/vk_generate.py
index 3c9f582..44cdf15 100755
--- a/tools/glave/scripts/vk_generate.py
+++ b/tools/glave/scripts/vk_generate.py
@@ -1749,7 +1749,7 @@
                     rbody.append('            for (unsigned int i = 0; i < pPacket->maxLayerCount; i++)')
                     rbody.append('                bufptr[i] = GLV_NEW_ARRAY(char, pPacket->maxStringSize);')
                 elif proto.name == 'DestroyInstance':
-                    rbody.append('            xglDbgUnregisterMsgCallback(g_fpDbgMsgCallback);')
+                    rbody.append('            xglDbgUnregisterMsgCallback(remap(pPacket->instance), g_fpDbgMsgCallback);')
                 rr_string = '            '
                 if ret_value:
                     rr_string = '            replayResult = '