You never know, given printf'ing NULL-strings might crash the program, we shouldn't just pass argv0 blindly to it.
When we move the exit() out of venprintf(), we can reuse it for weprintf(), which basically had duplicate code. I also renamed venprintf() to xvprintf (extended vprintf) so it's more obvious what it actually does.
Prepend program name only when fmt doesn't begin with "usage".