use commander and other npm modules to refactor nrm

1. auto generate help infomation
2. use npmconf instead of spwan to save npm registry config
3. save user's custom registry info to $HOME/.nrmrc, seprate from nrm's own config
4. only allow to delete custom registry config

the help output is not aligned now, so i made a PR to commander.js for aligned help output. see visionmedia/commander.js#211