 (defn reg-event-fx
   "Register the given event `handler` (function) for the given `id`. Optionally, provide
   an `interceptors` chain.
-  `id` is typically a namespaced keyword  (but can be anything)
-  `handler` is a function: (coeffects-map event-vector) -> effects-map
-  `interceptors` is a collection of interceptors. Will be flattened and nils removed.
-  `handler` is wrapped in its own interceptor and added to the end of the interceptor
+  
+    - `id` is typically a namespaced keyword  (but can be anything)
+    - `handler` is a function: (coeffects-map event-vector) -> effects-map
+    - `interceptors` is a collection of interceptors. Will be flattened and nils removed.
+    - `handler` is wrapped in its own interceptor and added to the end of the interceptor
    chain, so that, in the end, only a chain is registered.
-   Special effects and coeffects interceptors are added to the front of the
-   interceptor chain.  These interceptors inject the value of app-db into coeffects,
+   
+   This function will add special effects and coeffects interceptors to the front of 
+   `interceptors`. These additional interceptors inject the value of app-db into coeffects,
    and, later, action effects."
   ([id handler]
    (reg-event-fx id nil handler))

  value is ignored.

  Example Use
  -----------

  First, registration ... associate `:effect2` with a handler.

  (reg-fx
     :effect2
     (fn [value]
        ... do something side-effect-y))

  Then, later, if an event handler were to return this effects map ...

  {...

   'very soon', bit not now. And if the queue already contains events, 
   they will be processed first. 
   
   Usage:
   ```clj
   (dispatch [:order-pizza \"me\" {:supreme 2 :meatlovers 1 :veg 1}])
   ```
   "
  [event]
  (router/dispatch event))
