Use CLJS version with :js-op
Work on CLJS. Fix subtyping between records and protocols.