Set keepalive to 5 seconds in paramiko_ssh.py

This update resolves https://github.com/ansible/ansible/issues/6476.
Return untouhced servers with exact_count
now when making multiple dirs in path to make dir, same permissions are assigned (but only for NEW dirs)

Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
added doc noting the change in behaviour
Improve the ec2_snapshot argument spec and docs

ec2_snapshot got missed when moving to a common argument spec.
It could already make use of the capabilities (as it uses
ec2_connect) and the documentation suggested it supported the
common argument spec (thanks to the documentation fragment work)
so it was just a matter of fixing the argument spec.

Removed unnecessary documentation for profile and security_token
that is covered by documentation fragment

Also removed spurious documentation flags (default: null, aliases: [])
which aren't needed.
if key name already exists on tenant, check if public_key is offered that it matches the existing key
bumped to 1.7
Make sure the docker data has a "Names" field before using it

Fixes #7363
Fixed incorrect handling of paths contaiin whitespaces
Properly merge role conditionals in with pre-existing conditionals

Fixes #7387
Add missing basedir to Runner in _do_setup_step
Pass vars_files on to included playbooks too

Fixes #7384
Clarify that the encrypted param must also be set.

While the encrypted parameter's documentation clearly states that it needs to
be set, if you are focused on the password parameter's documentation, there's
nothing to draw your attention to the fact that encrypted may also need to be
set.
Fix env splitting in docker module

ENV variable value could contain '=' (for example mysql://host/db?pool=10)
Merge pull request #7393 from jimi-c/issue_7387_role_conditionals

Properly merge role conditionals in with pre-existing conditionals
Merge pull request #7399 from SirScott/postgresql_user_doc_touchup

postgresql_user module documentation:  Clarify that the encrypted param must also be set.
Merge branch 'pass-basedir-to-runner-on-setup' of https://github.com/ByteInternet/ansible into ByteInternet-pass-basedir-to-runner-on-setup
Merge branch 'ByteInternet-pass-basedir-to-runner-on-setup' into devel
Only chown on atomic move if the uid/gid don't match the src/tmp file

This is a corner case for remote file systems that don't support
chown() and where the source and destination for the atomic_move
are on that remote file system.

Fixes #7372
Merge pull request #7400 from etehtsea/patch-1

Fix env splitting in docker module