Move defn/defmacro out of let so we get better classnames and stacktraces for Emacs Lisp