really better args parser.