Added interaction Delegate to pull out some of the interaction logic from the Person base class