Tests fixed, arguments now behave rationally

Rather than corresponding to how the tests would like them to be. This may
later on involve changing the tests to eliminate the check on the number of
arguments remaining, as this may not be something easily done. That is,
(format) could do multiple-value-bind which would mean that the format I'd
ordinarily adopt like:

is_deeply( [ Format( undef, "~a", 3, undef, undef ) ],
           [ 3, [ undef, undef ] ] );

would already be in use in the code.