Putting reflection based handle method back and improving to select the correct method by event type.