Recovered from a merge disaster. Lost previous commit messages so I won't bother.