Implement support for closed TypedDicts (PEP 728) (#21382)
Implement support for the closed keyword on TypedDicts (part of [PEP
728][]).
Additionally, fix some preexisting issues that I came across while
updating the logic.
* Fixes #7435
* Fixes #7981
* Fixes #8714
* Fixes #12143
* Fixes #20401
* Partially addresses #18176
[PEP 728]: https://peps.python.org/pep-0728/