(spec? x)
returns x if x is a spec object, else logical false
(defn spec? [x] (when (implements? Spec x) x))