JCLOUDS-457: Clean up for the validators and the TreeHash class.

Now the validators use checkArgument instead of throwing an
exception by calling an static method.

There were some missing validators on the Async client, these
were fixed too.

Lastly, TreeHash inner class was removed. Now the factory methods
are in the TreeHash class.
JCLOUDS-457: Added completeMultipartUpload and abortMultipartUplod.

Now the Glacier client supports completeMultipartUpload and i
abortMultipartUpload operations.
JCLOUDS-457: Call BeforeMethod and AfterMethod

Use these annotations to initialize before every test.  BeforeTest and
AfterTest initialize once before a single test in this suite.
JCLOUDS-457: Added list Multipart operations

Added listParts and listMultipartUploads operations to the Glacier
client.
Bug fix for ContentRange equals
JCLOUDS-457: limit body size for specific test

For each test, we were forcing the server to discard the content of
the request body on @BeforeMethod. We need to do this on tests with a
huge body, but it may interfere with other tests which actually use
the body data.  To fix this problem, we moved the body limit
restriction to the tests that require it.
JCLOUDS-457: Added initiateJob

Now the Glacier client supports the initiateJob operation.
JCLOUDS-457: Cleanup for binder classes

The binder classes were making unnecessary checks. They have
been cleaned up.
JCLOUDS-457: Multiple fixes

This commit addresses some problems found in the code:

- Now VaultMetadata returns a copy of the creation date instead
of their own instance.

- Added a checkNotNull for PaginatedVaultCollection iterable.

- Added a test for listVaults with an empty list of vaults.
JCLOUDS-457: Added describeJob operation

Now Glacier client supports the describeJob operation.
JCLOUDS-457: Added listJobs operation

Now the Glacier client supports the listJobs operation.
JCLOUDS-457: Added the retrieve output operations

Now the Glacier client can retrieve data.
Use assertj fluent assertions where appropriate

This commit demonstrates a few instances where assertj yields more
informative error messages than testng assertEquals and assertTrue.
Note that we could replace all testng asserts with assertj.
Improve use of assertj
Added the CONTRIBUTING file
Exclude the CONTRIBUTING file from the rat check
Default value for aws identity/credential property

Every project was using undefined properties in their pom.xml.
A default value for test.aws.identity and test.aws.credential was
added.