#18985: Improve fcntl documentation.

Original patch by Vajrasky Kok, further improved (I hope) by me.
Merge #18985: Improve fcntl documentation.
#19480: HTMLParser now accepts all valid start-tag names as defined by the HTML5 standard.
#19480: merge with 3.3.
Optimize BaseSelector.modify(). Patch by Arnaud Faure.
#17080: improve error message of float/complex when the wrong type is passed.
Remove redundant test_selectors.py from test_asyncio.
Issue #19514: Deduplicate some _Py_IDENTIFIER declarations.
Patch by Andrei Dorian Duma.
Fix _Py_normalize_encoding(): ensure that buffer is big enough to store "utf-8"
if the input string is NULL
Issue #19514: Add Andrei Dorian Duma to Misc/ACKS for changeset 4a09cc62419b
C API doc: try to group concrete objects
frameobject.c: Use an identifer instead of creating explicitly an interned
string for "__builtins__" literal string
Issue #19512, #19515: remove shared identifiers, move identifiers where they
are used.

Move also _Py_IDENTIFIER() defintions to the top in modified files to remove
identifiers duplicated in the same file.
_Py_normalize_encoding(): explain how the value 6 was computed
Issue #19437: Fix fsconvert_strdup(), raise a MemoryError on PyMem_Malloc()
failure
Issue #19437: Fix _io._IOBase.close(), handle _PyObject_SetAttrId() failure
Issue #19437: Fix datetime_subtract(), handle new_delta() failure