ssh connection plugin: Report missing sudo password

If no password is provided, sudo hangs at the prompt. Identify this and
report that the password is missing as an error.
VPC security group membership fix for boto.

* facts now provides a list of existing vpc security group memberships
* adding a comma separated list of sg-* tags properly modifies membership
module replace - report changed only if contents is changed
Fix race conditions where a process gets in state "Running"
between the restart/start command and the summary command.

Refactor to avoid repeating the status, and fail if a given call to monit fails.
Only update submodules when recursive is true
Adds support for VPC subnets to ELB
module docker_image - default tag latest

Fix constant rebuild of image if no tag specified.
Fix for https://github.com/ansible/ansible/issues/7054 - when renaming an instance and waiting for the change to occur, force result.id to the name of the new instance so the subsequent call to get_current_resource succeeds.
Fix #7057 missing False default for vars_prompt

The test for default should be "is not None" since a boolean value of
False is a valid value.

See discussion at:
  https://groups.google.com/forum/#!topic/ansible-project/oc1_zE-FnyI
Adding support for purging subnets
module docker - add docker version comment

Default docker version 0.9.1 from Ubuntu 14.04 LTS don't report APIVersion.
Updated and corrected example section
Use empty string rather than None to avoid TypeError
Improve error messages.
Ensure the validation string has %s in it
Make alternatives module python 5 compatible
Fail if monit reload failed; don't mask the error.

This is necessary for the scenario when you push a new, broken monit
config out, and then set a state=reloaded handler - the error was
previously swallowed so you could end up with successful play but missing
monitoring (!).

Signed-off-by: Chris Lamb <chris@chris-lamb.co.uk>
Use the existing module_vars during the templating of module_vars

Since some of the vars contained in there may be used in the templating
of other variables. This also reverts e83a494 which originally fixed
issue #6979 but broke some other variable related things.

Fixes #6979
Fixes #7321
Fixes #7332
Fix to unescape * was discarded by unescape of @

`decoded_name` was created twice, each from `rset.name`

So, the second call to `.replace(r'\100', '@')` overwrites decoded_name, discarding the result of the call to `.replace(r'\052', '*')`

I had a problem with wildcard domains that was fixed by this patch.
Add support for rpm builds through mock
Improve OFFICIAL build conditional test

An unofficial build is any build where OFFICIAL != yes.  This patch adjusts the
conditional accordingly.