refactoring
adds some more tests
removes comment