Changed client to not static since it should be instance-specific, not class-specific
plugin building with AWS Java SDK 1.3.26
update project and build for latest Jenkins LTS (1.480)
added S3 storage class selection at a per project granularity
will only modify/set x-amz-storage-class HTTP header field if set in plugin configuration
Add demonstration of tokens and subfolders to the bucket help text.
Always upload artifacts, even if build failed.
Add S3 user metadata to uploads.

S3 uploads can be tagged with user metadata in the form of key-value
pairs. Add a config option on a project-by-project basis to tag uploads
with this metadata.

This is most useful when the metadata includes Jenkins macros–for
instance, we plan to use it to tag build uploads with the branch of the
build.

The option is project-by-project rather than file-by-file due to
Jenkins/Jelly issues with nested <f:repeatable> elements.
[FIXED JENKINS-14395] Protected the secret key
[FIXED JENKINS-14470]

The instance field needs to be marked as transient to avoid persistence. In this case, I see no point in AtomicReference since a race condition of creating two clients will do no real harm.

So I just replaced it with volatile field to avoid the need of recreating AtomicReference object upon the deserialization from XStream.
Merge branch 'pull-5'
Merge pull request #7 from jzerbe/master

support for s3 storage class
Merge pull request #8 from aclowes/master

Expand the help text a bit
for backward data compatibility, one needs to prepare for the case when this field is null.
Merge branch 'pull-10'

Conflicts:
	src/main/java/hudson/plugins/s3/S3BucketPublisher.java
	src/main/java/hudson/plugins/s3/S3Profile.java
Merge remote-tracking branch 'origin/master'
Merge branch 'pull-12'

Conflicts:
	src/main/java/hudson/plugins/s3/S3Profile.java
There are big enough changes to justify 0.4
Exclude commons-codec.

... to pick up the version from the core that's newer, or else tests
will fail.
[maven-release-plugin] prepare release s3-0.4
[maven-release-plugin] prepare for next development iteration