DESC
Allow the library header to be used properly in C++ programs by surrounding it
with extern "C".
EDESC

This patch allows the the header to be used in C++ programs by surrounding it
with extern "C" clauses. This has no effect on C programs but it's needed by
the C++ linker. It's ugly but there's nothing much we can do to avoid it
(besides blaming C++, of course =).

Thanks to Ronald Burkey.

