First commit.

This is essentially unchanged from our developer retreat on Sept 22-23.
Updates to come.