 (def globals (atom {}))
 
 
+;;; Root systems logic.
+
 (defn with-systems
+  "This function starts the root systems for the containium. The
+  `system-components` argument is a sequence of triples, where each
+  triple contains an identifier (likely a keyword) for the root
+  system, the symbol pointing to the start function of the system and
+  a symbol to the stop function of the system. The start function
+  takes the config from spec as an argument, whereas the stop function
+  takes that what the start function returned as an argument."
   [system-components config systems f]
   (if-let [[key start stop] (first system-components)]
     (try



(defn handle-commands
  [spec systems boxes]
  ;; Handle commands like starting and stopping modules, and stopping the application.
  ;; This can be done through typing here, updates on the file system, through sockets...

    (f systems)))


;;; Box logic.

(defn start-box
  "The logic for starting a box."
  [module resolve-dependencies]
  (try
    (let [box (boxure {:resolve-dependencies resolve-dependencies
