#140, #132 - create a JUnit based test runner that is able to replace the test classloader correctly and is safe for parallel execution of test classes and methods
- migrate all tests to JUnit and remove testNG dependencies