Middle of major refactoring.
13 files changed