Do not retry on I/O errors (IOError exceptions); terminate quietly on EPIPE

I'm often using `s3cmd get $file -` in a shell pipe, e.g., piping results through `head -n2` or the like. Currently this causes s3cmd to retry, which doesn't make sense for most I/O errors including EPIPE. I/O errors should be considered fatal. For EPIPE an error message should not even be printed.