Add support for multiple ranges in a host

e.g.  db[01:10:3]node-[01:10]

- to do this we split off at the first [...] set, getting the list
  of hosts and then repeat until none left.
- also add an optional third parameter which contains the step. (Default: 1)
  so range can be [01:10:2] -> 01 03 05 07 09
Return a friendly error message if aptitude isn't installed
Add test for 'ignore_errors:'
updated module docs to reflect 'correct' on_create vs on_creation
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
Check if mysql allows login as root/nopassword before trying supplied credentials.
Update gem

I've added ability to install gems in system-wide manner with --no-user-install options
fixing small mis-spelling
Added module for baking EC2 AMIs
digital_ocean.py enhancements

* Always refresh droplet information (versus getting it from cache) for
  --list, --host, --droplets, and --all.   All the DigitalOcean calls are
  pretty fast and without this change, inventory was often stale/incorrect.
  For example, previously if you destroyed a droplet, the inventory
  script would still find it and attempt to act on it.

* Added --force-cache option

* Added some option shortcuts -d, -r

* Added more value sanitization
sleep option for service module which adds a pauze between stopping and starting a service using state=restarted. This helps for bad scripts that exist immediatly after signaling a process to stop.
fixed spelling errors, unused variables and unused import
Getting timeout errors this morning as AMIs are taking a bit longer to create, so I changed to timeout to 15 minutes
files/stat: add pw_name and md5 sum to stat, and add meaningful? example
  remove unnecessary import,
  md5 sum on regular files only
Fix some minor spelling mistakes in the hg module documentation
Fix path to ntp.conf.j2 in example.

The "common" role adds "common/templates/" to the src path.
Rewritten s3 module to allow for additional modes of operation.
supervisorctl: add command-line options as module parameters

Adds more parameters which may be passed to supervisorctl:  config,
serverurl, username, password

Also refactored the various `module.run_command(build_a_string)` calls
into a single `run_supervisorctl` function.
Use .encode() instead of str() to support unicode arguments.

str() throws an UnicodeEncodeError for code points that cannot be
represented in 7-bit ASCII. This makes it impossible to use any
non-ASCII characters in module arguments. Using encode('utf-8')
gives the desired result.
Fixed monit module. Ignore uppercase letters
digital_ocean: make sure 'images' includes non-global images

The `dopy` library function all_images includes a 'global' filter
by default.  This was preventing private images from showing up
in --images.

The problem also made this script fail immediately for people
who had droplets previously created with private images.