This patch is a prerequisite for using LangStandard from Driver in https://reviews.llvm.org/D64793.
It moves LangStandard* and InputKind::Language to Basic. It is mostly
mechanical, with only a few changes of note:
- I've renamed OpenCL to LF_OpenCL in enum LangFeatures to avoid a clash with OpenCL in enum Language.
- Now that getLangStandardForName, which is currently unused, also checks both canonical and alias names, I've introduced a helper getLangKind which factors out a code pattern already used 3 times.
The patch has been tested on x86_64-pc-solaris2.11, sparcv9-sun-solaris2.11,
and x86_64-pc-linux-gnu.
However, it will need companion patches for lldb and polly which both use either
or both of LangStandard.h and InputKind::*. To avoid everyone's time, I'll only
write and test them once it becomes clear that the current approach is acceptable.