   (:import org.xeustechnologies.jtar.TarInputStream)
   (:require [clojure.string :as string]))
 
-(def handlers '[repo-handler autotools-handler])
+(def handlers [repo-handler autotools-handler])
 
 
 (defn run-handlers
   "Run all the handlers on a definition"
   [config]
-  (for [h handlers] (h config)))
+  (doseq [h handlers] (do (println config) (h config) (println h))))
 
 
-(defn process-handlers
+(defn process-configurations
   "For each project definition, run all the handlers on it"
   [configurations]
-  (functor/fmap run-handlers configurations))
+  (map run-handlers (vals configurations)))
 
 
 (defn autotools-handler

(defn download
  "Download a file, and save it to a known filename"
  [remote-file local-file]
  (shell-out "curl" remote-file "-o" local-file "-s"))

(defn untar
  "Untar a file, into directory"


(defn init [& argv]
  (proto.repl/init)
  (def configuration (-> argv
                          first
                          io/reader
                          slurp
                          yaml/parse-string))
  (process-configurations configuration))


(defn -main []
  (init *command-line-args*))
