 
 
 (defn -main [ & args]
-  (let [cmd (first args)
-        args (next args)]
+  (let [[options extra-args]
+        (cli args ["-f" "--file" "Which control file to be executed."])
+        {:keys [file]} options
+        cmd (first extra-args)
+        args (next extra-args)]
+    (when file
+      (reset! special-control-file file))
     (case cmd
       "init" (apply init args)
       "run" (apply run args)

        [clojure.tools.cli :only [cli]]
        [clojure.java.io :only [file reader writer]])
  (:gen-class))

(def ^{:private true :tag String} CONTROL-DIR "clojure-control.original.pwd")


      (refer-clojure)
      (use '[control core commands])
      (load-file
       (or @special-control-file (str (get-control-dir) "/control.clj"))))
    (catch java.io.FileNotFoundException e (error "control file not found."))))

(defn version
