Two commits that do the following (shout if they need to be borken up more):

Refactor granch and add message specific actions

Refactors some non-lein specific client functions into client.ml.

Allow sending of multiple messages to the the nrepl server.  Each message
is associated with a record of actions for each returned field type.  The
actions are stored in the pending message data, which is now a hashtable,
rather than a list ref.

Add a 'main' target

The main target runs a main function in a project repl, bypasssing lein.

The main namespace is passed as the first argument.  The rest of the
arguments are passed to the main function.