Implemented getopt for argument parsing and help messages, see #13