refactored so all wrapped methods call the same function. Even though
they all call the same _delegate method. HM