Use argp instead of getopt