0.8.17.31: "dlerror and a tale of woe"
Fix two bugs relating to dlerror() in the OS X dl* shim:
* dlerror() should return NULL when there is no error
* dlerror() should return an error when dlsym() returns NULL
Also, fix a call to cerror with only one argument.
Restores support for OS X 10.2 "Jaguar":
* Use a header file with constants for the dl* shim instead of the
OS dlfcn.h, which doesn't exist under 10.2 and does under 10.3
* Include a fake nl_langinfo which returns a codeset of UTF-8 unless
neither LC_CALL or LANG are set to C. OS X uses UTF-8 everywhere, so
this is arguably the right behavior.