refactoring everything in separate classes
deleted test for ckaninterface (does not exist anymore)