Use OpenSSL::Digest where possible.

Per #525 it appears that the regular Digest module is not thread-safe. Testing
showed that OpenSSL::Digest on the other hand is working fine.

Currently the SQS related code still uses Digest in one place. I tried
replacing that but this triggered spec failures for unknown reasons. The
OpenSSL::Digest API should be identical to Digest so I'm not really sure what's
going on here.
Route53 health check: ip_address isn't required

http://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateHealthCheck.html#API_CreateHealthCheck_Requests

http://aws.amazon.com/about-aws/whats-new/2014/04/30/route-53-announces-domain-name-based-health-checks/
Adding support to the AWS::Core::Endpoints module for getting hosted zone ids for S3 buckets that are hosting websites.
Added session token support to the S3 v4 presigned url generator.

Fixes #534
Updated the CloudSearch 2013 API model.

To construct the new client:

  cs = AWS::CloudSearch::Client.new(api_version:'2013-01-01')

Fixes #509
Bump version to v1.40.1
Added binary and binary set support to DynamoDB batch write abstraction.
Bump version to v1.40.2
Merge pull request #530 from carlhoerberg/patch-1

Route53 health check: ip_address isn't required
introduce custom error for empty multipart upload
Merge pull request #537 from schlubbi/mulitpart_upload_error

introduce custom error for empty multipart upload
Merge pull request #529 from YorickPeterse/master

Use OpenSSL::Digest where possible.
Added a #with_tag method to EC2 collections:

This makes it easier to filter by a paired tag key and value:

   ec2.instances.with_tag('key', 'value')

The #with_tag method provides an alternative the following:

   ec2.instances.filter('tag:key', 'value')
Updated the capabilities banner in the docs.
Bump version to v1.40.3
update sample code to use the default credential provider instead of hardcoded strings in a file
Clarify log_level configuration docs
Fix for Route53::HostedZone#exists?

Route53 rerturns a NoSuchHostedZone error when you attempt
to describe a non-existant hosted zone.  This call was being
used to implement #exists? but it was not rescuing the error.
Updated to the latest CloudFormation API.
Reverts presigned v4 url change to Content-MD5.

Fixes #543