Make FileNameOption behave more like old filenm parser

If a required file name option is provided without a value, then it is a
no-op.  Previously, FileNameOption raised an exception for such usage.
Add a test to cover this case.

Related to #642.

Change-Id: I89d6cc8ee5d5bf2915bb6841317b402ade00b99b