Implement `honcho run PROCESS`

This makes `honcho run` primarily about running a Procfile-specified process in the foreground (the first proposal at https://github.com/nickstenning/honcho/issues/56#issuecomment-34546939). Previously it was about running an arbitrary shell command, which still works, but now as the fall-through case if a
single arg to `honcho run` doesn't match a Procfile process.

The reason this change is desirable is to be able to use debugging tools such as pdb along with Procfile process aliases. Furthermore, this brings honcho back into harmony with Foreman's behavior, but in a way
that is documented more sensibly (Foreman presents the process case as the exception rather than the command case).

This change is backwards-compatible except for edge cases where a shell command name was used as a Procfile process name. So, for example, if `mv` was a process name, then calling `honcho run mv` would now invoke the Procfile process rather than the shell command. Since we also check for the number of arguments when trying to interpret as a process name, this edge case is especially edgy. I think this can safely be considered a backwards-compatible change for all practical purposes.