Fixes EUCA-3112. Updated signature method for Walrus internal requests.

New signature method for internal Walrus requests that are signed using
eucalyptus system certificates. Called 'EUCA2' authentication it uses a
single Authorization header of the form:

Authorization: EUCA2-RSA-SHA256 <cert fingerprint> <signed-header-list> <signature>

This also requires changes to the eucadmin tools/euca2ools that handle
the bundle upload from NCs. This fix includes changes to the Java client, server,
and Walrus C client in the NC.

Also includes changes to the SystemCredentials class to calculate certificate
fingerprints for lookup. There are not stored in the DB, just calculated at
load time.

Conflicts:
	util/Makefile
	util/euca_auth.c
Resolved conflicts to bring the recent changes from maint/3.2/testing into this branch for testing with
both the security fixes and the recent Walrus header de-dup fix.

Merge branch 'maint/3.2/testing' into maint/3.2/security

Conflicts:
	clc/modules/storage-controller/src/main/java/edu/ucsb/eucalyptus/cloud/ws/HttpTransfer.java
	clc/modules/storage-controller/src/main/java/edu/ucsb/eucalyptus/cloud/ws/HttpWriter.java
	clc/modules/wsstack/src/main/java/com/eucalyptus/ws/handlers/WalrusAuthenticationHandler.java
Fixed memory leak not cleaning up url_host in walrus.c
Merge branch 'maint/3.2/master' into maint/3.2/security
Merge branch 'maint/3.2/master' into maint/3.2/security
Fix to use proper date header for S3 signature verification. Fixes EUCA-4795.

Previously Was substituting x-amz-date for Date when present but that does not
follow S3 spec. Looks like it was a typo, returned the wrong variable from getDate()
in WalrusAuthenticationHandler.
Merge branch 'maint/3.2/master' into maint/3.2/security
Fixes an incorrect negation for freeing url_host in walrus.c

The incorrect case causes memory to not be freed to give a small
leak. Would also cause a free of a NULL if the variable were NULL.
Merge branch 'maint/3.2/master' into maint/3.2/security
Fixes EUCA-4828 where some messages to Walrus were incorrectly marked expired.

The cause was an incorrect date format string in combination with a bug in
the implementation of apache.commons.httpclient.util.DateUtil that parsed
the hour incorrectly for exactly 1 value: 12pm GMT.

This fixes the date string and adds a bit of log output for expired messages
to aid in debug of any case where messages are declared expired.
Merge branch 'maint/3.2/master' into maint/3.2/security
Merge branch 'maint/3.2/master' into maint/3.2/security
Merge branch 'maint/3.2/master' into maint/3.2/security
Merge branch 'maint/3.2/master' into maint/3.2/security