reorder usermod options
further compatibility with older versions of python-apt (#5853)
Revising method for parsing ranges from --limit subsets

Also added a new test (test_subset_range) for future validation.

Fixes #4620
Module to create EC2 snapshots

Two methods of creating a snapshot
* use volume_id
* use device_name and instance_id

The latter is more useful with inventory
Pick up default EC2 region from boto.config

This doesn't account for boto configs where e.g. RDS has one
default region and EC2 another - all will default to `ec2_region_name`.

However, this is just handy to allow an easy site wide default
region if existing configuration already relies on it.

Modules can be improved to mention this in the documentation and
turn off required=True where needed. But it works with `ec2`
and `ec2_vol` without change.
Make sure requested version tag gets downloaded

There is a subtle bug in how the git module currently works. If the
version you request is a tag name, and you've already got the repo
cloned, and the tag name is a new tag, but refers to the already checked
out working copy, the git module would exit early without change. This
is bad as it means the new tag ref was not fetched and could not be used
in later tasks.

This change will check if the version is a remote tag, and if the tag
doesn't exist locally. If that is true, it'll do a fetch.

The activity could still be seen as not a change, because the working
copy won't be updated, if the new tag refers to the already checked out
copy, but that's not different than before and can be fixed as a more
comprehensive overhaul of tracking change in the git module.
Change standard AWS access and secret key parameter names to aws_access_key and aws_secret_key. Fixes an authentication problem with the rds module and standardizes the naming convention on something more encompassing than ec2_*_key.
The name parameter for search_opts is a regex string, so make sure we include start and end of string characters
Adding the region to the output of the ec2 module's creation of a new instance.
allow ansible_ssh_private_key_file to be templated (thanks to benno)
removed comment
allow templating of ansible_ssh_private_key_file also in the synchronize module
Add creates= and removes= to the script: action
call expanduser for src and dest
already call expanduser in action_plugin
Merge remote-tracking branch 'jeromew/ansible_script_creates' into issues_4986
Added script to the new integration tests.
Typo fixes.
Typo fixes.
Formatting cleanup.