get user input, including flags, and parse from command line