S3 driver refactor

This requires some discussion of how we will handle errors due to network problems
and after further changes in that direction some more stress testing. There is also an
upcomming commit implementing zero fill on WriteStream when offset is greater than
the current size of the file.
Implements zero fill behaviour for large offset in WriteStream

This requires a very intricate WriteStream test, which will be in the next commit.
Minor style change
Loop bug fix
Replace ReadFull with Read and some cleanup
Make driver work with read only creds and remove multi cleanup on boot
Add eventual consistency test
Zero fill bug fix
First pass at cleanup for PR merge
S3 driver input parameter fixes
Merge pull request #864 from AndreyKostov/next-generation

S3 storage driver for next gen modifications