Merge branch 'release-2.9.9'

* release-2.9.9: (39 commits)
  Bumping version to 2.9.9
  Added release notes for v2.9.9.
  Revert "Added "lookup" and "new_item" to dynamodb2.table, which makes it more"
  Updated Opsworks for support AMI ID & configuration managers.
  Add unit tests for #1555 to ensure behavior works as expected
  Added a try block around json.loads call, and code to look for 403 errors
  Fix compatibility issues with python 2.5
  Set secure connection to elb api as default, as for any other connection
  Reformat SES unit tests for PEP8
  using from clause to import TestCase
  Changing to unittest2 Changing call  to super for setUp
  pep8 standards
  Adding unit test for detach_internet_gateway
  Fix for Issue#1417
  add unit tests for InstanceGroup instantation
  don't require the price to be a string, and then report 'must be specified' if I pass a float.
  Updated erroneous test.
  Updated a test to match current autoscale output.
  Fixed up BotoServerException's use of message
  Fixed the ability to specify ``logging`` on ``DistributionConfig``.
  ...
Merge branch 'release-2.9.9' into develop

* release-2.9.9:
  Bumping version to 2.9.9
Added notes about merging pull requests.
Add unit tests for EC2 auto scaling policy MinAdjustmentStep
Added a failing test for set changes in DDBv2.
Altering how state tracking of ``Item`` data works in DDBv2.
update cacerts from mozilla.org

Used mk-ca-bundle.pl locally to generate a recent cacerts.txt file that
fixes https certificate validation for OSX 10.8x. These certs were built
with:

$ perl mk-ca-bundle.pl -w 64 boto/cacerts/cacerts.txt

fixes boto/boto#1535
closes jtriley/StarCluster#267
Added a failing test for CloudSearch's Layer2.
fix for https://github.com/boto/boto/issues/1629
Only include MinAdjustmentStep as a parameter if it has been set in order to prevent changing existing behavior; updated unit tests to show this behavior.
-w flag never actually checked s3 for a file's existence. Always refused to upload.
added non-zero exit statuses for unsuccessful runs

Previously, the program always exited 0 unless it crashed.  This covered many of the failure scenarios like "permission denied" and "The specified bucket does not exist", but didn't cover anything that would provoke usage() to be called ("-h" notwithstanding)

This adds an arbitrarily ascending list of non-zero exit codes to all the cases of "usage" and also the exit() called for unaviliable multi-part upload.  usage() not defaults to exit status 1, since -h has been covered and most other uses of usage() would be for error conditions
Merge remote-tracking branch 'taylordt/ec2-min-adjustment-type' into develop
Fixed the sending of empty data to DDB as well.
add DynamoDB ap-southeast-2 endpoint
Merge branch 'jtriley-update-cacerts' into develop

Closes # 1578.

* jtriley-update-cacerts:
  update cacerts from mozilla.org
Fix slow tests to not actually sleep

These two tests were causing the unit tests to
take 2min40secs to run.  The fix is to patch time.sleep
because we don't actually actually need to sleep during
the tests.

I also updated the tests to be more idiomatic including:

* Don't need to define setUp() if you're just calling super()
* Prefer assertRaises(), this gives better failure messages
  and is easier to read.
Merge branch 'fix-slow-tests' into develop

* fix-slow-tests:
  Fix slow tests to not actually sleep
Replace JSONDecodeError with ValueError

simplejson has JSONDecodeError, but json doesn't.
Catch both JSONDecodeError and ValueError and add a unit test to confirm that both are caught and the expected service exception gets raised.