Linking together c & c++ objects.

The C target runtime can be hidden behind an extern "C" interface
allowing the demos to be written in C++.