Massive architectual refactoring.