             [pigpen.cascading.runtime :as cs]
             [pigpen.raw :as raw]
             [pigpen.oven :as oven]
-            [taoensso.nippy :refer [freeze thaw]]))
+            [taoensso.nippy :refer [freeze thaw]]
+            [clojure.pprint]))
 
 (defmulti get-tap-fn
           identity)
 
 (defmethod get-tap-fn :string [_]
-  (fn [location] (Hfs. (TextLine.) location)))
+  (fn [location opts] (Hfs. (TextLine.) location)))
 
 (defmethod get-tap-fn :default [_]
   (throw (Exception. (str "Unrecognized tap type: " name))))

  {:pre [id ancestors location storage]}
  (-> flowdef
      (update-in [:pipe-to-sink] (partial merge {(first ancestors) id}))
      (update-in [:sinks] (partial merge {id ((get-tap-fn storage) location)}))))

(defn- cascading-field [name-or-number]
  (if (number? name-or-number)

  {:pre [id location storage fields]}
  (let [pipe (Pipe. (str id))]
    (-> flowdef
        (update-in [:sources] (partial merge {id ((get-tap-fn storage) location opts)}))
        (update-in [:pipes] (partial merge {id pipe})))))

(defmethod command->flowdef :store
