Stage 2 Design Overhaul

All functionality ready. Minor tweaks before pull request.