Changelog:
- Add tox tests
- Add PEP 613 TypeAlias
- Add SupportsIndex, added in Python 3.8
- Fix required and optional keys inheritance for TypedDict
- Replace asyncio.coroutine with async-await
- Reuse stdlib PEP 593 implementation in typing_extensions if present
- Backport get_origin() and get_args()
- Track optional TypdeDict keys
- Accept arbitrary keyword names in NamedTuple() and TypedDict()
Signed-off-by: Algent Albrahimi <algent@protonmail.com>