refactoring packages to separate contract from implementation
moving files around
refactoring complete
all tester related implementation is inside tester package and only visable via interfaces
safety measures.