This patch basically implements [1] in ExecuteCompilerInvocation.cpp. It
also:
- replaces CreateFrontendBaseAction with CreateFrontendAction (only one method is needed ATM, this change removes the extra indirection)
- removes InvalidAction from the ActionKind enum (I don't think it adds much and keeping it would mean adding a new void case in CreateFrontendAction)
No new functionality is added, hence no tests.
Then this forward declaration should go as well.
And please remove the #include from FrontendAction.cpp. An unrelated redundancy, but somewhat related :)