entityx event chain designs