Implement Enums for Role and State constants in controlTypes (#12510)
In order to improve the NVDA API and internal typing, Enums are created
for ROLE_* and STATE_* constants.
Changes:
- retain backwards compatibility until 2022.1 in controlTypes
- improve type information for controlTypes processing
- create a clickableRoles set in role.py for processAndLabelStates
- update docstrings to reflect new types
- lint controlTypes due to the mass changes
- deprecate helper functions for processAndLabelStates
- standardise members of the State enum from 0X[0-9]+ to 0x[0-9]+
- implement a displayStringEnumMixin
- deprecate roleLabels, stateLabels, negativeStateLabels
- update coding standards for enum usage and deprecations
Co-authored-by: Leonard de Ruijter <leonardder@users.noreply.github.com>