Add possibility of compiling tpie as a shared library, and explicitly mark public symbols as public
Declare more stuff public
Expose test_runner as public
Improve shared lib building