Post render returned data from actions.

For the set_fact action, the passed in data is directly fed back
into (effectively) host vars- without enforced rendering (meaning
undefined vars slide past) since enforcement doesn't occur for module_args.

That is a problematic API, but is suppressed via the overall better behaviour
of rendering any returned content in full.  This ensures that if an action
is being special and returning a jinja2 evaluation, the host var results
hold the rendering at that moment (rather than down the line when vars
may be missing), and has the benefit of addressing the set_fact scenario.

Literally, the following was previously valid while undefined vars were
disallowed:

- hosts: all
  tasks:
  - set: my_data="{{ undefined_var }}"
  - debug: msg="my_data is {{my_data}}" # result is {{ undefined_var }}

Now, that is an error at the time of the set_fact.