refactor kernel events to use fuelcell as well as RouteDispatcher