Consistently handle NULL at argv[argc].

The command-line test classes now provide a trailing NULL for the argv
array, to match what the C/C++ standard says about argv for main().
The new command-line parser also adds such a NULL at the end if it
modifies the array.

Change-Id: I723d45ee599c47db205544878d547ee6d5dad230