Add .lein-failures, .lein-repl-history, .nrepl-port to .gitignore
Introduce io.aviso.exception/exception-dispatch for pretty printing exceptions

By default, it is equivalent to clojure.pprint/simple-dispatch, however
it can be modified by the user without affecting simple-dispatch.

Example of use:

  (defrecord Foo [])
  ;= user.Foo

  (defmethod e/exception-dispatch user.Foo [foo] (print "#<foo>"))

  (e/write-exception (ex-info "foo" (->Foo)))
  ;; clojure.lang.ExceptionInfo: foo
  ;;    data: #<foo>