can quit
basic argument processing, graphical and non-graphical branches