Reopening architecture rollup

I made several more changes including catching a couple memory leaks. At some point before 1.0 it needs Instruments ran. I don't have energy left to break it into feature branches but I rebased all commits to be granular in scope. The overall line count isn't so drastic ignoring strings files and copyrights.