Almost there, time to get messy...
The code all works.

It's time to go in, document and automate the build process. Finally.