Started the transition to interfaces - good for mock objects. Some core portions of the new engine created.