Issue #19254: Provide an optimized Python implementation of PBKDF2_HMAC
lower case pbkdf2_hmac
Issue #18582: provide a faster C implementation of pbkdf2_hmac that works with OpenSSL < 1.0
contextlib doc updates and refactoring

- explain single use, reusable and reentrant in docs
- converted suppress to a reentrant class based impl
- converted redirect_stdout to a reusable impl
- moved both suppress and redirect_stdout behind a functional
  facade
- added reentrancy tests for the updated suppress
- added reusability tests for the updated redirect_stdio
- slightly cleaned up an exception from contextmanager
Doc markup fixes.
Skip the asyncio tests when threads are not available.

See http://bugs.python.org/issue19295
Issue #18582: HMAC_CTX_copy() is not available on OpenSSL < 1.0
Disable some subprocess tests that hang on AIX.

See http://bugs.python.org/issue19293
Verify hostname if verify_mode is CERT_OPTIONAL too.
Issue #19279: UTF-7 decoder no more produces illegal strings.
Issue #19279: UTF-7 decoder no more produces illegal strings.
Issue #18582: skip test of _hashlib.pbkdf2_hmac if OpenSSL is not available or too old
Ignore PyCharm project directory
Ignore PyCharm project directory
Issue #1772673: The type of `char*` arguments now changed to `const char*`.
Issue #12866: The audioop module now supports 24-bit samples.
Fixed tests for issue #19279.
Null merge
Restore prototypes for the 'openpty' and 'forkpty' on BSDI (broken in issue #1772673).
Issue #18606: Add the new "statistics" module (PEP 450).  Contributed
by Steven D'Aprano.