     (t/write w data)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Encoding & Decoding
+;; Implementation Details
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-(defrecord Client [headers method url])
-
-(defn client
-  "Creates a new client instance from socket."
-  ([url]
-   (client url {}))
-  ([url {:keys [headers method] :or {headers {} method :put}}]
-   (Client. headers method url)))
-
-(defn client?
-  "Return true if a privided client is instance
-  of Client type."
-  [client]
-  (instance? Client client))
-
-(def ^:private
-  +default-headers+
-  {"content-type" "application/transit+json"})
 
 (defn- process-response
   [response]

    (if (= :method :get)
      (merge req {:query-string (str "d=" (b64/encodeString data true))})
      (merge req {:body data}))))

(defn send!
  [client {:keys [type dest data headers] :as opts}]

            [httpurr.client :as http]
            [httpurr.status :as http-status]
            [httpurr.client.xhr :as xhr]))

(def ^:private
  +default-headers+
  {"content-type" "application/transit+json"})

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Data encoding/decoding
