Adding in docopt

This a pull request in the style of "early and often review". A summery of the changes:

Added dependency for docopt library
Refactored cli.py to use docopt for version and help output
Included prototype docopt doc string

Could you review and make sure this is acceptable? If so we can finish refactoring the rest of cli.py to use docopt.

In addition I have a note: docopt doesn't seem to support color output so in order to keep the nice looking help output that clint provides we don't really get to use one of the main benefits of docopt, that the help message defines acceptable input automatically.

So should we replicate the docopt string when showing the help message to user through clint?