C++ Compatibility

Added the extern "C" declarations to make the static library's public interface link properly with C++ code.