Fix command parameter aliasing and exception handling

The addition of 'runat' exposed a bug in the parameter passing for
commands. We pack a tuple into a list in add_cmd_output() and then
unpack it in collect_cmd_output(). These functions need to be
careful in the use of positional vs. keyword arguments; passing
keywords as though they were positional can lead to e.g. an
integer timeout value appearing in the tuple member for
'suggest_filename' causing an exception when we attempt to pass
the value to get_cmd_output_now().

Fix this by ensuring that all keyword args are passed explicitly
through these functions and improve the debug logging by printing
the tuple we are packing/unpacking.

This also removes the exception handling block from the function
collect_cmd_output() - this routine should allow exceptions to
propagate up so that they can be handled by the --debug logic.

The 'command not found' case is already logged in the generic
get_command_output() wrapper.

Signed-off-by: Bryn M. Reeves <bmr@redhat.com>