anchor.diff:  (defgeneric remote-client/write (client state))
   
   (defmethod remote-client/read ((client remote-client) (state (eql :accepting)))
  -  (listen (socket client))
  -  (remove-fd-handlers (event-base client) (socket-os-fd client) :write t)
  -  (setf (state client) :connected))
  +  (listen (socket client)))
   
   (defmethod remote-client/write ((client remote-client) (state (eql :accepting)))
     (listen (socket client))
     (remove-fd-handlers (event-base client) (socket-os-fd client) :write t)
  -  (setf (state client) :connected))
  +  (setf (state client) :connected)
  +  (call-callback (on-connection client) client))
   
   (defmethod remote-client/read ((client remote-client) (state (eql :connected)))
     (labels ((process-stream (stream)
  
positive.code:    (on-error
      :initarg :on-error
      :accessor on-error)
     
     (state
      :accessor state)
  
negative.code:   (:default-initargs
     :event-base (default-event-base)
     :on-object nil
     :on-error nil
     :on-connection nil))
  
  (defun remote-client/error (client exception)
    (close client)
  