         [overtone.helpers.string :only [capitalize]]
         [overtone.helpers.system :only [get-os system-user-name]]
         [overtone.helpers.file :only [mkdir! file-exists? path-exists? mv!]]
+        [overtone version]
         [clojure.java.io :only [delete-file]]))
 
 (def CONFIG-DEFAULTS

  (try
    (do
      (live-config OVERTONE-CONFIG-FILE)
      (load-config-defaults))
    (catch Exception e
      (throw (Exception. (str "Unable to load config file - it doesn't appear to be valid clojure. Perhaps it has been modified externally? You may reset it by deleting " OVERTONE-CONFIG-FILE " and restarting Overtone. Error: " (.printStackTrace e)))))))

             (alter config* assoc k v)))
         CONFIG-DEFAULTS))))

(defn- update-seen-versions
  []
  (dosync
   (let [val (get @config* :versions-seen)
         val (or val #{})
         new-val (conj val OVERTONE-VERSION-STR)]

     (alter config* assoc :versions-seen new-val))))


(defonce __MOVE-OLD-ROOT-DIR__
  (let [root (:root OVERTONE-DIRS)]
      (when (path-exists? (str root "/config"))
