test: Add a test using GLX_EXT_create_context_es2_profile.

This is based on a bug report from Steinar H. Gunderson about using
GLES3 with SDL and epoxy.
Don't dlsym() if we failed to dlopen().

No reported bugs I'm fixing here, just cleanup.
Don't leak dlerror()s while we're trying to probe libraries.

Again, no known bugs, but it seems like a bad idea.
Factor out the GLX versus EGL current context detection code.

It turns out I need to reuse this for GLES symbols when using
GLX_EXT_create_context_es2_profile.
Ask glXGetProcAddress for ES symbols when we're on a GLX context.

Fixes #24
Clean up epoxy_current_context_is_glx().

Now that it's split out from epoxy_get_core_proc_address(),
the particular symbols we were testing for before calling
GetCurrentContext() didn't make much sense, plus we were leaking
dlerror()s still.