Reset Cached Event Objects

When analyzing the memory usage of my game, I found that some unused objects were not garbage collected because they were referenced in `Event` objects that were cached in `EventDispatcher.EVENT_CACHE`, `InputMgr.TOUCH_EVENT`, or `TouchHandler.TOUCH_EVENT`.

While these objects would be garbage collected eventually (when the cached event are reused), I think it would be nicer to reset the events right away.