Force connection of stdin and stderr in the run command.

If stdin is closed, which is the case when pluginhook is called from an
interactive session, "docker run" does not connect stdin and stderr by default.
Fixes #323
Split commands into independent hooks.

This prevents commands from hanging when called from ssh.
Also use `pluginhook -s` to run commands.
Add a simple interactive shell to run dokku commands.
Allow the logs' `-t` option to come before or after the app name.

Also fix a problem with detaching from the container.
Add a few utility commands.

A `docker command which (obviously) runs docker, and an `ls`command
which lists the deployed applications.
Prefix all commands in plugins with the plugin's name.

Don't use pluginhook to run commands.
Renamed 00_dokku-standard into core.
Add support for aliases.
Change the help command to be suited to the new command format.

Every user-facing shell should contain a special help message after its
shebang.
The help command parses it, and display the correct command, based on the
ALIAS file.
Include a default set of aliases.
Use DOKKU_ORIGINAL_COMMAND in usage messages.
Merge git-* into a single git:shell command, using aliases.
Allow printing help for a single plugin.
Use an underscore as the default command.
Add an alias plugin to manage the ALIAS file.
Export a PLUGIN_ROOT variable.
Move the "shell" command into its own plugin.
Use an inputrc to disable (useless) file completion in the shell.
Make 'test_deploy' use the short version of the url command.