Final big refactoring, one new test and initial work on a general intergration testing approach
50 files changed