Use larger buffers for temporary file reads for performance

As witnessed this would otherwise perform small 8K reads by default.
Reduce the amount of syscall thrashing and memory shuffling by Python
by asking for larger amounts from the kernel at a time.

It might be better if one could use the "async I/O via cat" trick.
That would allow the program to schedule concurrent operations more
aggressively.  However, that is hard to do because of boto's
key.set_contents_from_file assumes a non-stream file object with .tell
and .seek operators.