Since applications can use these functions to find their symbols, it's
important that Glaze intercept these and ensure that the appropriate
wrapped symbols are returned.
This implementation allows the wrapping library to optionally
implement glXGetProcAddress itself. If it does, it's responsible for
implementing it correctly.
If the wrapping library does not implement glXGetProcAddress, then
Glaze's version will return a symbol from the wrapper if any
exists. Otherwise, it will defer to the underlying glXGetProcAddress
to do whatever it needs to do.