 
 (defn structify
   "Takes a sequence of row vectors, as commonly produced by csv parsing libraries, and returns a sequence of
-  structs. By default, the first row vector will be interpreted as a header, and used as the keys for the maps.
-  However, this and other behaviour are customizable via an optional `opts` map with the following options:
+  structs. By default, the first row vector will be interpreted as a header, and used as the keys for the structs.
+  However, this and other behaviors are customizable via an optional `opts` map with the following options:
 
   * `:keyify` - bool; specify whether header/column names should be turned into keywords (default: `true`).
   * `:header` - specify the header to use for map keys, preventing first row of data from being consumed as header."

;; ## vectorize

(defn vectorize
  "Take a sequence of maps, and transform them into a sequence of vectors. Options:

  * `:header` - The header to be used. If not specified, this defaults to `(-> rows first keys)`. Only
    values corresponding to the specified header will be included in the output, and will be included in the

;; ## batch

(defn batch
  "Takes sequence of items and returns a sequence of batches of items from the original
  sequence, at most `n` long."
  [n rows]
  (partition n n [] rows))

