assertMatch tracing works
lots of refactoring, renaming and other things
merge