Show the task dict with erroneous key

This is very similar to #8462, so if I should merge them into one please let me know.

When a task has an erroneous key, it dies with the message:
> ERROR: path is not a legal parameter in an Ansible task or handler

After this patch, it dies with the more verbose but also more illustrative:
> ERROR: 'path' is not a legal parameter in task or handler: {'path': 'foo.sh', 'stat': None, 'register': 'my_var', 'name': 'foo bar', 'ignore_errors': True}

Observe that the offending key is now quoted, to set it apart from the rest of the text