Print a useful error message when MemoryError is raised
Added support for restoring files from Glacier storage.

Includes recursive option.
Less verbose
fixes for Windows not including a pwd module
fix divide-by-zero when no files were transferred

Repored by Jason Woodall to s3tools-bugs 2014-01-06.
handle OSError: No such file or directory in get_local_filelist

reported to s3tools-bugs by John R. Moser 2013-01-09.
Merge branch 'bug/memoryerror' into merge
Merge branch 'bug/divide-by-zero' into merge
Merge branch 'bug/lstat-removed-file' into merge
Merge branch 'bug/windows-no-pwd' into merge
Merge git://github.com/robd003/s3cmd into merge
--no-check-md5 should disable md5sum calculation, including preserved attributes

Fixes https://github.com/s3tools/s3cmd/issues/217

--no-check-md5 removes 'md5' from the cfg.sync_checks list.  It does
not remove it from the cfg.preserve_attrs_list list.  Therefore each
file's md5sum is calculated when generating the preserved attribute
header (which also includes username, groupname, size, obtained from
stat(), ...).  The default for both sync and put is --preserve.

Therefore, to disable md5 generation completely, one needs to also use
--no-preserve.

Another option would be to have --no-check-md5 also remove 'md5' from
cfg.preserve_attrs_list.  I had added 'md5' to the
cfg.preserve_attrs_list list in June 2012 (1.5.0-alpha time period)
when I added hardlink detection, so it's a relatively new change that
is causing md5sums to be calculated by default.  This patch implements
this, --no-check-md5 now removes 'md5' from cfg.preserve_attrs_list.
Merge branch 'bug/217' into merge
fix put - s3://  (upload from stdin, #270)

https://github.com/s3tools/s3cmd/issues/270
Merge branch 'bug/put-from-stdin' into merge
os.gete[ug]id() doesn't exist on non-Unix
Merge branch 'bug/put-from-stdin' into merge
Fix the example for recursive listing.
Merge git://github.com/flebel/s3cmd into merge