Improve validation of --author and --name.
Mostly, the code used to allow having either --author or --name, while it should use either both (when generating metadata) or neither (when using a metadata file).
This code fixes this, and also catches some more invalid cases.
Depends on !369 (closed).
Migrated from D2470 (view on Phabricator)