getopt lib for parsing