def parse(arguments = ARGV)
@cmd = CmdParse::CommandParser.new(true, true)
@cmd.program_name = "juicer"
@cmd.program_version = Juicer.version.split(".")
@cmd.options = CmdParse::OptionParserWrapper.new do |opt|
opt.separator "Global options:"
opt.on("-v", "--verbose", "Be verbose when outputting info") { |t| @log.level = Logger::DEBUG }
opt.on("-q", "--quiet", "Only log warnings and errors") { |t| @log.level = Logger::WARN }
end
add_commands
@cmd.parse(arguments)
@log.close
rescue SystemExit
exit
end