Massive restructure; general client stuff in Client.

Implement Lein module in terms of Client.eval; everything goes through Client.
Fix lein module to exit upon exception.
Use readline inside repl task.

WIP: doesn't track done messages properly.
Add proper loop to Repl module.
Track namespace in Client module.

(Maybe this should be on a per-session basis?)
Unify status handling and action handling.
Mention what happens with an old Leiningen version.
Send request to print stacktrace on eval-error

Conflicts:
	repl.ml
Print stack traces in repl as well.
Give a decent stack trace when we can't connect.
Add :connect option to repl.
Support interrupts, sorta.

The repl gets out of sync when interrupts fire; need to wait to ask for input.
Use readline for generic stdin requests.