Use leiningen's built-in shell command.

This fixes a bug where lein shell is called after other
subprocesses which has rebound the IO. It would previously lose the
first bytes which was eaten by the rebound IO.

It will also follow a concept called DRY, and bugfixes in leiningen's
IO handling should thus be reflected in lein shell.
Add in debug info.
Specify *env*/*dir* per command. Closes #7.
Add functionality to ignore exit code. Closes #9.
Inform about exit code ignoring.
Add in contributing.md.
Only deploy from stable.