Cfy 1707 use cloudify agent settings given as invocation input

There is a problem with this test here because 'cloudify_agent' is part of the cloudify.nodes.Compute property schema. This means that all nodes that derive from it (for instance the windows softlayer nodes) will have this property as will, it will simply be an empty dict.
`if ctx.node.properties and 'cloudify_agent' in ctx.node.properties:`
should be perhaps something like this:
`if ctx.node.properties and ctx.node.properties.get('cloudify_agent'):`
The test above works because the default value 'cloudify_agent' is an empty dict, and the boolean value of an empty dict is false.
`properties.get('cloudify_agent')` will return None if it is not in the properties.
So if the property is not there then `bool(None) is False`, if the default value is there then `bool({}) is False` otherwise, `cloudify_agent` is not empty and raise an exception