MakeCommandOptionParse will create an implementation of a CommandOptionParse object.
This particular implementation is a wrapper around getopt_long(3). That interface unfortunatly does not provide enough information to give the best error messages with malformed input. If the implementation changes there is a good chance that the binary interface will remain the same.
This defines a linked list head pointer for all the command line options that use the default list.
It will most likely be used in most cases without being explicitly referenced in application code. It is a default value of various method's parameters.