Allow empty array default 2

Currently, it is simply forbidding to have an empty array as a default.  This is because trollop attempts to first derive the default, and then to compare that to the given type, and it is not possible to know the type of an empty array.

If the type is in fact given, however, there is no problem, so long as the type is a MULT_ARGS_TYPE.

(This is how I prefer my pull requests to look)
This fails test_type_and_default_must match.  (Because it skips determining the type from the array.)