Incorporate comments from Nathan Collier, and other revisions.