Add to Application class a method to set the usage message automatically.

The usage message will show the available commands and their docstrings.

Example auto-generated usage message:

```
Usage: Please run with one of the following commands:
  cron_once             Execute the cron once.
                        The cron fetches from git, does validation, and updates ZooKeeper.
  debugger              Launch into the debugger, giving you a Python REPL with access to Git and ZooKeeper.
  cron_continuously     Execute the cron every CRON_INTERVAL_SECONDS seconds.
                        If there's an exception, the process will fail. Otherwise, the process will run forever.
                        The cron fetches from git, does validation, and updates ZooKeeper.
  server                Run as the server.
                        The server is mainly used for monitoring and diagnostics.
                        Takes one argument: The port on which to accept requests.

Options:
  -h, --help, --short-help
                        show this help message and exit.
  --long-help           show options from all registered modules, not just the
                        __main__ module.
```