Use install instead of installmissing if Chocolatey >= 0.9.8.24

X-ref: #13980

This also adds a chocolatey.chocolatey_version function and does some
DRY cleanup so that the error message and exception are raised in
_find_chocolatey() instead of in 6-8 different places.
Adding a check if the respective pkg.upgrade cmd fails.
Fixing lint issue in pkgpng.  Reverting changes in brew.py because of unit tests failures.
Rename boto tests files to include '_test' at the end
Move mock_ec2 decorator back to functions
Add needs_daemon=False to run_tests
resolve issue with Ubuntu 12.0.4 failures
block_device_mappings support for CloudStack

block_device_mappings can be used with CloudStack the same way
as Amazon. It will remove any disks attached to a machine when
destroying it.
resolve issue with failing unit test due to groupId not existing
remove comments regarding boto failure - relevant only to versions prior to 2.4.0 / release date prior to 15-May-2012
add tcp-dumper for visualzing salt-master network activity
fix missing brace
pylinting and cleanup
more linting
fix mail address
Update dockerio.py
Update dockerio.py
Update dockerio.py
resolve issue with boto < 2.4.0 GroupOrCIDR attributes
support IPIP interface type for RedHat linux.