#13510: clarify that f.readlines() is note necessary to iterate over a file.  Patch by Dan Riti.
#13510: merge with 3.3.
Issue #17710: Fix pickle raising a SystemError on bogus input.
Issue #17710: Fix pickle raising a SystemError on bogus input.
remove pointless code (closes #17738)
merge 3.3
Make C and Python implementations of pickle load STRING opcodes the same way.

The C version tried to remove trailing whitespace between the last quote and
the newline character. I am not sure why it had this because pickle never
generated such pickles---for this to happen repr(some_string) would need to
return trailing whitespace. It was maybe there to make it easier for people
to write pickles in text editors. Anyhow, the Python version doesn't do this
so there is no point keeping this around anymore.

Also, I've changed the exception raised when a bad pickle is encountered.
Again this unlikely to make much difference to anyone though it does make
testing slightly nicer for us.
- Issue #17012: shutil.which() no longer fallbacks to the PATH environment
  variable if empty path argument is specified.  Patch by Serhiy Storchaka.
- Issue #17012: shutil.which() no longer fallbacks to the PATH environment
  variable if empty path argument is specified.  Patch by Serhiy Storchaka.
Remove unused import.
Remove unused import
Issue #17739: fix the description of SSLSocket.getpeercert(binary_form=True) for server sockets.
Thanks to David D Lowe for reporting.
Issue #17739: fix the description of SSLSocket.getpeercert(binary_form=True) for server sockets.
Thanks to David D Lowe for reporting.
#17740: fix links to the socket function.  Initial patch by Zachary Ware.
#17740: merge with 3.3.
#17766: test_iterlen now works with unittest test discovery.  Patch by Zachary Ware.
#17766: merge with 3.3.
#17771: fix typo.  Patch by Andriy Mysyk.
#17771: merge with 3.3.
#14735: Update IDLE docs to omit "Control-z on Windows".