Some sugar macros and helpers for Clojure protocols and records