Test: Fix create_subcommand to use passed name

Instead of, you know, having one hardcoded and ignoring the parameter
Test: Simplify setting of PYTHONPATH

Because a join of one element only does not include the glue, of course.
Stop using my own 'die' function

sys.exit will print a string if it is passed as parameter. The only
reason why I would need my die function is to exit with a return code >
1, which is not a need right now.
Unconditionally initialise is_dir

Otherwise it might not defined when we return it at the end of the
method.
More comprehensive command object -> str
Use argparse

Thanks to the existence of argparse.REMAINDER, which will capture in a
list all remaining arguments after processing the ones that are known to
the parser, I can now process driver arguments and forward the rest to
the requested command.
Provide an API option to avoid exiting

When the driver needs to exit, e.g. due to an error, or as the result of
an internals command, it will just call sys.exit.

When testing, or with potencial advanced uses of a custom driver, this
might be undesirable. Setting the 'exit' keyword argument of
subdue.sub.main to False will prevent the driver from exiting. If an
exit condition occurs, then the main function will return a SystemExit
exception object.
Test: --is-eval option coverage