New module 'set' to define local variables (scope of the play)

This module allows you to set local variables in the scope of the play.

For this we have to make sure Runner() has access to play variables so we can inject these variables during the run of a play. Previously the play variables were static at the start of Runner() but now they can change during a play. I used the same mechanism as 'ansible_facts' so if a module returns 'ansible_vars' it sets local variables.