Consistent error messages that are started by lower-case character
Consistently use "Internal Compiler Error", rather than "ICE" that is not widely known
Consistency use "CTFE internal error" for the errors that happened during interpretation

Maybe, some of the errors would be caused by the AST that comes from the semantic analysis stage and the CTFE interpreter does not intent. But "CTFE error" is much understandable for the compiler end users.
Merge pull request #4186 from 9rnsr/fix_errmsg

Improve consistency of dmd error messages
[] mask permutation of runnable tests
[Refactoring] A small code flow improvement in AndAndExp and OrOrExp
+stash for the code style changes
Simplify CallExp::interpret() and support DotTypeExp in CTFE

Handle function values in each CTFE steps, then interpreting CallExp::e1 just only once will be enough.

Problematic case is a __cpctor call. In it, the 'this' expression is an
unilitialized variable so we need to initalize it before the interpretation of e1.

Also simplify ThisExp::interpret, comes from CallExp improvement.
Stop generating internal __cpctor function so it's just redundant

Instead we can directly memcpy the object, then call the postblit.
Remove ctfeNeedLvalueRef and ctfeAnyValue

+all test ok

remove resolveReferences and so on
Update validator and fix a bug in InExp::interpret()
+clean up statement interpretation
-validator
validator+1