         (show-new-elem (get-new-elem) cur)
         state)
       (do
-        (mount-element parent (raw-deref* child-ref) before)))))
+        (insert-child* (raw-deref* child-ref) before)))))
 
 (defn bind-child [parent child before cur]
   (if-let [binder (:binder (meta child))]

      (node-detaching x (fn [] (remove-dom-node x)))
      (remove-dom-node x))
    (-remove! x)))

;; ## Defining Transitions

;(defn- wrap-element-spec [elem-spec]
;  (if (string? elem-spec)
;    (ElementSpec. elem-spec)
;    elem-spec))

;; (defn with-transitions [elem-spec transitions]
;;   (vary-meta elem-spec merge transitions))

;; (defn- exec-transition [node transition-name callback]
;;   (if-let [transition (get-transition node transition-name)]
;;     (transition node callback)
;;     (when callback (callback))))

;; ## Polyfills


;; Building Elements

(defn insert-child! [parent child before]
  (append-or-insert-child parent child before))

(defn append-child! [parent child]
  (append-or-insert-child parent child nil))

(defn- append-children! [elem children]
  (doseq [ch children]
