JCLOUDS-653: Upgrade to Guava 18.0

Release notes:

https://code.google.com/p/guava-libraries/wiki/Release18
Add whitespace after semicolons
Remove spurious whitespace
Prevent instantiation of utility classes

Also prevent extension.
Remove redundant modifiers from interfaces
Avoid primitive wrapper constructors
Address FindBugs warnings
Address Checkstyle violations
Replace uses of ByteArrayPayload
Prefer Charsets.UTF_8 over string literal

Found with modernizer-maven-plugin.
Prefer Charsets.UTF_8 over string literal

Found with modernizer-maven-plugin.
Ignore jEnv files
JCLOUDS-707: Improve SSH key pair creation

The SSH key pair creation has been improved to avoid having multiple
public keys with the same fingerprint:

* Create the SSH key pairs before creating the nodes.
* Only auto-generate key pairs if the user has not configured a
  public key.
* If the user has provided a public key, try to find one with the
  same fingerprint and reuse it.
* To make the migration to v2 easier, now the fingerprint of the
  public key is used for the name of the key pair.
Rename method in builder according to the name of the property
Prefer isEmpty() to size()
JCLOUDS-664 Updating Azure compute provider

Renamed to azurecompute, removed dead code and refactored good code.
CloudSigma2 ComputeService and SecurityGroupExtension.

* Added the ComputeService implementation
* Added the SecurityGroup extension
* Added the San Jose region
* Added the Honolulu region