Manually merging in Scott's latest changes, and added support for "dont_traverse" options.