cleaner command line parsing