Refactor/sansio
Fixes #9 (closed), #10 (closed) and #19 (closed).
Note
Currently, all unit tests that don't compile are removed to allow for adding them back individually in a working state.
This is why the refactoring effort is only merged onto the develop branch for allowing to readd the tests.
Edited by Julius Rüberg