Refactored to actually have the object fulfilling the Delegate pattern to be named a delegate.