support extending protocols to all object-array types
disallow binding let qualified names
seq/first/next/rest
more seq utils
Cheat at booting protocols by using clojure.core
assoc
metadata fns