Feature: upload from the slave

This feature when enabled in the build configuration, will let the plugin
to upload the objects directly from the slave, instead of proxying the
file contents to the master first.
This is very useful when the slaves are running in EC2, but the master
runs outside of EC2.

Signed-off-by: brice <brice@daysofwonder.com>
Feature: managed S3 artifacts

This feature when enabled in the build configuration ties the upload
artifacts to the given build.
This means the following features are enabled:
* artifacts are finger printed and linked to the build
* artifacts can be downloaded directly from the build page in the
S3 Artifact section
* artifacts are automatically deleted when the build is deleted
* the S3 Copy Artifact build step can be used to download artifacts from S3
automatically, helping build complex pipelines

When this setting is disabled, the previous behavior is available, and
the artfacts are not linked.

Signed-off-by: brice <brice@daysofwonder.com>
Feature: add configuration to upload or not on build failure

Since commit 7198ceea723d6ba6faa731aceae81c4befa8f965, the artifacts
are always uploaded. In a fully managed by Jenkins scenario this might
be counter-productive to upload artifacts when the build fails.
Thus checking this checkbox allow to retrieve the original behavior.

Signed-off-by: brice <brice@daysofwonder.com>
Merge pull request #19 from masterzen/feature/managed-s3-artifacts

Fully managed S3 artifacts and assorted changes