fix (commands): fix alias handling in commands

- fix aliases only working for first specified alias
- add ability to specify additional commands as aliases (eg, release)
- add alias names to command name in list
- dynamically size command name column in help text to always fit
- change command exec function signature to accept the command name
first
- change debug/release command to use the new command alias structure,
    removing the process.args parsing code entirely.
- update all other commands to use simple aliases

NOTE: this changes how devkit commands are executed internally. Now
all command.exec functions accept the command name as the first argument
making the function signature now (command, args, cb). This allows the
command to detect which alias is called without having to re-parse
the process.args.
Merge pull request #48 from gameclosure/fix-command-aliases-rebased

fix (commands): fix alias handling in commands