Merge branch 'tests' into develop

* tests:
  add testing targets to makefiles, rearrange CMakeLists a little
  write a basic unittesting framework
add placeholder for punch_module()
Merge branch 'implement-punch-module' into tests

* implement-punch-module:
  add placeholder for punch_module()
print name of the test in test fail message
draw unittests
module unittests
particle unittests
update test_main