           response (handler (nippy/thaw request))]
       (send! protocol socket [q/MSG-REP address (nippy/freeze response)])
       (send! protocol socket [q/MSG-READY]))))
- 
+
 (defn- handle-incoming
   [consumer]
   (fn []

    ((@consumer :initialize))
    (.start (Thread. #(.start zloop)))
    consumer))
  
(defn start
  [method handler]
  (with-heartbeat (create-consumer method handler)))

(defprotocol Protocol
  (send! [this socket messages]))

(defn insert [vec pos item]
    (apply merge (subvec vec 0 pos) item (subvec vec pos)))

(defrecord MessageProtocol [method]
