Large number of small modifications. Basically trying to split tests between unit, integration and acceptance. I can't believe I waited so long. The testing process took 2 hours each time, which meant it was run very infrequently, which means that I wasn't diligent enough when it came to testing. Moreover, by always preferring big integration tests to unit ones I am never really sure the classes are fine or I just got lucky. Anyway I think it's time to improve testing discipline. For now I am slowly adding quick simple unit tests for those classes that were tested only with others.