This creates a required option:
vul_arg<std::string> a_filename(0, "Input filename?");

but it must be the first item in the argument list (ie it is not named). Is there a way to create named, required options? The main benefit is that there can be more than one required option.

For example, if "input" and "output" both be required, so if the program was run like this:
./Program --input file.txt

it would say "error, output is required".

Is this possible? Or does it seem like a reasonable feature request?