Starting work on moving the implementation out.
Refactoring everything out.
Major refactoring.