#15545: fix sqlite3.iterdump regression on unsortable row_factory objects.

The fix for issue 9750 introduced a regression by sorting the row objects
returned by fetchall.  But if a row_factory such as sqlite3.Row is used, the
rows may not be sortable (in Python3), which leads to an exception.  The
sorting is still a nice idea, so the patch moves the sort into the sql.

Fix and test by Peter Otten.
#13934: document sqlite version strings, use correct one in test.
Enable a broken test and fix it.
#13899: \A, \Z, and \B now correctly match the A, Z, and B literals when used inside character classes (e.g. [A]).  Patch by Matthew Barnett.
Issue #16874 (forward-port from 2.7): fix some documentation formatting.
#16154: fix some doctests in Doc/library.  Patch by Ravi Sinha.
grammatical fix; thanks to Alex Rudnick from docs@
Issue #15539: Fix a number of bugs in Tools/scripts/pindent.py.
Now pindent.py works with a "with" statement.  pindent.py no longer produces
improper indentation.  pindent.py now works with continued lines broken after
"class" or "def" keywords and with continuations at the start of line.  Added
regression tests for pindent.py.  Modernized pindent.py.
Merge heads
Add a note about checking refleaks to patchcheck.