Added buffering to reduce the number of calls.

This *increases* file copying speed by around 7x in my tests.

See: https://gist.github.com/jimfulton/6200533