Don't use guard for implementing trap-error and dynamic currying, instead use with-exception-handler directly.

guard provides some functionality that we don't need anyway, with-exception-handler matches trap-error better.