增加事件核心模块，整理部分代码