We want to stop aes_* and sha_* functions leaking out of our .so, as well as
internal _olm_* symbols.
This also means we need to link the unit tests against the objects. Possibly we
should distinguish between unit tests and integration tests.
Now that we have C and C++, we need to split the compile and link steps
(because we need different flags for the C and C++ files), so this is
easier with a Makefile.