     /**
      Receives a connection created by a connection creator.
     - parameter connector The connection creator.
-    **/
+    */
     public func connect<T: protocol<Publisher, Dispatch> where T.Publishing == Publishing>(to connector: T) {
         connect(with: connector.connection(to: self))
     }

/**
 Defines `Action` dispatch cabalities. Instances conforming to `Dispatch` are expected to know how to 
 dispatch `Actions`.
 **/

public protocol Dispatch {
    /**
     Dispatches an action.
     - parameter action The action that'll be dispatched.
    **/
    func dispatch(action: Action)
}


     Subscribes a `Subscriber` that is compatible with this `Publisher`.
     - parameter subscriber The compatible `Subscriber`.
     - returns A `dispatch` function and an `unsubscribe` handle, encapsulated.
    */
    func connection <T: Subscriber where T.Publishing == Publishing> (to subscriber: T) -> StateConnection {
        let dispatch = { self.dispatch($0) }
        let unsubscribe = self.subscribe(subscriber: subscriber)
