[clang][OpenMP] Shorten directive classification in ParseOpenMP

Use directive categories to simplify long lists of `case` statements
in the OpenMP parser. This is a step towards avoiding dependence on
explicitly specified sets of directives that can be expressed more
generically.
The upcoming OpenMP 6.0 will introduce many new combined directives,
and the more generically we handle directives, the easier the
introduction of the new standard will be.
in 0 seconds and was queued for 91 minutes and 16 seconds