don't extend IPrintWithWriter to natives, this defeats dead code
elimination around printing.
don't use extend-type on JS natives for IEncodeJS IEncodeClojure
remove cases in extend-type nil where we refer to data types, regular
fns now do this work
optimize lazy seq -seq implementation
don't extend string and array to ISeqable, change seq to deal with
them if satisfies? ISeqable fails
missing declares
revert buggy lazy-seq optimization
don't call `pr-str` from `missing-protocol`. add type string as
property on ctor. remove pr-str calls from deftypes. Fix Subvec
compare bug.