Created a solid, runnable state and made some new design decisions (more to come)