Oop. @mpilquist let me know when you are done going through this, then I can address any minor formatting issues in one commit