Issue #18592: Add docstrings to file being tested (idlelib.SearchDialogBase.py).
Merge with 3.3
Issue #18592: whitespace
Merge with 3.3
#18562: various revisions to the regex howto for 3.x

* describe how \w is different when used in bytes and Unicode patterns.

* describe re.ASCII flag to change that behaviour.

* remove personal references ('I generally prefer...')

* add some more links to the re module in the library reference

* various small edits and re-wording.
Merge from 3.3
#18445: change permissions on some scripts to executable
#18445: update Tools/scripts/README.

- document abitype.py, analyze_dxp.py, get-remote-certificate.py,
  import_diagnostics.py, parse_html5_entities.py.
- remove redemo.py which was moved to Tools/Demo.
- sort list into alphabetical order

Patch by Seydou Dia.
Issue #18489: idlelib.SearchEngine - add docstrings
(original patch by Phil Webster).
Merge with 3.3
Issue #18761: Improved cross-references in email documentation.
Issue #18761: Improved cross-references in email documentation.
Issue18771:  Reduce the cost of hash collisions for set objects.
Issue #18777: The ssl module now uses the new CRYPTO_THREADID API of
OpenSSL 1.0.0+ instead of the deprecated CRYPTO id callback function.
Issue #18777: The ssl module now uses the new CRYPTO_THREADID API of
OpenSSL 1.0.0+ instead of the deprecated CRYPTO id callback function.
Issue 18774:  Update news and whatsnew for the set optimizations
Typo fix
Issue #18647: Correctly bound calculated min/max width of a subexpression.

Now max width is MAXREPEAT on 32- and 64-bit platforms when one of
subexpressions is unbounded repetition.
Issue #18647: Correctly bound calculated min/max width of a subexpression.

Now max width is MAXREPEAT on 32- and 64-bit platforms when one of
subexpressions is unbounded repetition.
Issue #18647: A regular expression in the doctest module rewritten so that
determined minimal width of repeated subexpression is >0 (an empty line was
not matched in any case).