Address checkstyle violations
Prefer Guava HttpHeaders over JAX-RS

jclouds code contains more instances of the former and Guava has
additional constants like CONTENT_MD5.
Make constants final classes instead of interfaces

This commit prohibits implementation of the empty interface and
instantiation of the class.  Refer to _Effective Java_ item 19 for
more background.
Incorrect constructor name
Migrate InputSupplier callers to ByteSource

A future version of Guava will remove InputSupplier.
Added unit tests for compute functions
JCLOUDS-543/JCLOUDS-572: Use slugs as IDs and assume a node can have a null image if it used an imageId that has been removed
Prefer Guava Files over FileInputStream

This ensures proper resource handling.
Fixed artifactId typo
Improved error messages in preconditions
JCLOUDS-569: Added Job class to represent the Disk jobs
Removed empty line after constructor annotation
JCLOUDS-546: Remove Javadoc @author annotations

Annotations removed with:

find -name \*.java | xargs sed -i /@author/d

Empty Javadoc removed with multiple iterations of:

find -name \*.java | xargs sed -i -z 's/ \*\n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/ \* \n \*\// \*\//'
find -name \*.java | xargs sed -i -z 's/\/\*\*\n \*\/\n//'
Added the CONTRIBUTING file
Exclude the CONTRIBUTING file from the rat check
[JCLOUDS-500] Initial commit for docker
JCLOUDS-622: remove calls to InputSupplier methods

Guava 16 deprecated these methods and Guava 18 will remove them.
Fix use of deprecated Strings2.toString(InputSupplier)
Remove deprecated Paylods.newPayload calls
Fix minor compilation warnings