add cljr-move-defn

The following features have been implemented:

- Move the defn containing POINT to a new ns.
- Move the defns selected by the region to a new ns.
- Fail if the selection is deemed to be unbalanced by paredit and make
  sure we don't create whitespace errors in either buffers
- New home is found using find-file prompt.
- The defns are referred into the ns from which they were moved.
- Private functions, created with defn-, are not referred after moving.

Known limitations:

- The ns we're moving functions into can be left in an inconsistent
because no analysis is done to :require or :refer dependencies.