refactoring out common code. Most of the person code is now out