Use CommandBaseException
Support --profile option
Add HelpCommandTest
Support --no-interact option