tests: Add tests for syntax corner cases and CMP0053
EVIS: Reimplement using custom parsing code

Testing the configure (no generate) step with ParaView shows ~20%
performance improvement.

In terms of complete configure/generate steps, further testing with
ParaView shows a 20% performance improvement over 2.8.12.2 with Unix
Makefiles and minimal with Ninja. Ninja is less because it generate step
is the expensive part (future work will address this) by a long shot and
these changes help the configure step for the most part.
Utilities/Release: Use ${VAR} instead of @VAR@ syntax

The Utilities/Release/Cygwin/CMakeLists.txt is processed in the project,
not configured, so we should avoid using @-replacement syntax.
Revert "EVIS: Store the stack outside the function"

This reverts commit 344f231ccb3be3e571f9bcda5ea5b90c77dc2b4f.
Help: Add more reference targets to cmake-language.7
CMP0053: Revise documentation of this policy
CMP0053: Fix RunCMake.Syntax test for new policy summary
Help: Update valid variable characters in cmake-language.7
CMP0053: Fix some weird wording
EVIS: Output the variable-as-parsed in error message
tests: Add tests for spaces and tabs in variable names
EVIS: Remove strings from the stack

Keep a single string around and build it up incrementally. This avoids
string allocation within the stack which is much faster.