Moving Chris's work into this branch.