Updated EventHandler Class

Change the EventHandler class to include a field for the parent Object
type (with a default value of null in case it isn't needed) and a
corresponding constructor. This will allow the EventHandler to call
public methods exposed by the parent Object.