Bulk of the app

We haven't pulled anything into this repo since September, but we should probably keep it a lot more up-to-date wrt upstream for the purposes of collaboration.