Revive testrunner.so

Revive testrunner.so (run with run.py -e testrunner.so), which runs all tests
in the tests/ directory in the image.

Changed it to C++, and for simplicity use the osv::run() API.

The next steps on the TODO list should be:
1. Change the manifest so that non-tests are NOT copied to the tests/ on the
   image.
2. Add an option to run tests in parallel, for maximum testing speed. Will not
   be trivial (will need to redirect the tests' output so they don't mix, and
   also figure out the load so we can run as many tests in parallel as we need
   to fill up the CPUs).

Signed-off-by: Nadav Har'El <nyh@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>