Combined unexpected commands
This combines cmElseCommand, cmElseIfCommand, cmEndForEachCommand, cmEndFunctionCommand, cmEndIfCommand, cmEndMacroCommand, and cmEndWhileCommand to a single class: cmUnexpectedCommand. I picked that name because it represents commands that are unexpected in the current context.