   "Walk the entire store, or an index"
   ([store]
      ;; TODO - this is broken, add inform tracker, etc.
-     (apply -get-cursor store))
+     (-get-cursor (.-root store)))
   ([store index start]
      (deps/inform-tracker store (js-obj (name index) (array start (last-val index)))) ;; shorthand
      (-get-cursor (get-index store index) start))

        (if (< i end)
          (recur (inc i) (f ret (aget a i)))
          ret)))))

;; KV index using binary search/insert/remove on array
;; - Always inserts new objects in sorted order

  ([o1 o2 & more]
     (apply upsert-merge (upsert-merge o1 o2) more)))

;; Return a cursor for walking a range of the index
(deftype Cursor [idx start end ^:mutable valid?]
  IReduce
