Created a ReferenceHoldingInputStream to extend FilterInputStream.  It's only purpose is to hold a reference to the s3client object
so that it doesn't get GC'd under load, causing a socket closed exception.

See: https://forums.aws.amazon.com/thread.jspa?threadID=83326#