public static void DispatchAndRedirect(this IEventDispatcher dispatcher, Action requestAction, object returnEvent, object redirectToEvent)
 {
     dispatcher.ListenOnceAndRedirect(returnEvent, redirectToEvent);
     requestAction.Invoke();
 }
 public static void DispatchAndRedirect(this IEventDispatcher dispatcher, ER requester, object returnEvent, object redirectToEvent)
 {
     dispatcher.ListenOnceAndRedirect(returnEvent, redirectToEvent);
     requester.Dispatch(dispatcher);
 }