tests: Add variable expansion tests

There are some corner cases in variable expansion which would be nice to
capture before going and rewriting the variable expansion code.
EVIS: Reimplement using custom parsing code

Much less of a bottle-neck now. Still some edge cases missing though.
ExpandListArguments: Optimize the parser

Insert into a string incrementally instead of using a vector of
characters.
cmCommandArgument*: Remove!

Gone! Today is a happy day :) .
cmStandardIncludes: Include cmIML/INT.h for portable integer types

Also teach the bootstrap script to configure the needed headers.
cmVersion: Fix CMake_VERSION_ENCODE for date in patch level

Use a uint64_t to store encoded version numbers so we have plenty of
bits available.  Encode with room for up to 1000 minor releases between
major releases and to encode dates until the year 10000 in the patch
level.  This is necessary because CMake development versions prior to
release 2.8.0 used the date in the patch level, and this practice may be
restored after the 3.0 release.
Export: Fix internal CMake version test logic

Fix the internal DEVEL_CMAKE_VERSION macro to use CMake_VERSION_ENCODE
to compare version component-wise.  Otherwise an old invocation of the
macro may be tricked into using the current version when the requested
major version is smaller than the current version but the requested
minor version is larger.  It should use the requested (old) version in
that case.
FindBoost: Search next to MPI libraries for boost_mpi (#14739)

Some distributions place boost_mpi next to the MPI libraries against
which it was built instead of next to the other Boost libraries.  If
find_package(MPI) has already been run prior to find_package(Boost) then
MPI_CXX_LIBRARIES or MPI_C_LIBRARIES may be set to the location of the
MPI libraries.  Teach FindBoost.cmake to look there for boost_mpi and
boost_mpi_python after looking next to the other Boost libraries but
not consider the location to be Boost_LIBRARY_DIR.
CMake Nightly Date Stamp
cmTarget: Remove TODO comment.

The current behavior is desirable because while it is common to
set a per-config suffix on libraries, it is not common for exexutables.
Merge topic 'backward-compatibility' into next

37e1894d cmTarget: Remove TODO comment.
Help: Update some 3.0 release notes wording
Merge topic 'release-notes-3.0' into next

dab6ff52 Help: Update some 3.0 release notes wording
Merge topic 'release-notes-3.0' into next

10f90d64 Help: Add CMake 3.0 Release Notes
ab6231f3 CMake Nightly Date Stamp
Help: Add CMake 3.0 Release Notes

Manually read through version control history since the 2.8.12.2
release and write release notes for important user-facing changes.

Co-Author: Stephen Kelly <steveire@gmail.com>
Merge topic 'cmake-devel-version-macro' into next

9bcc1b21 Export: Fix internal CMake version test logic
d2059d25 cmVersion: Fix CMake_VERSION_ENCODE for date in patch level
28805109 cmStandardIncludes: Include cmIML/INT.h for portable integer types
Merge topic 'FindBoost-MPI-hints' into next

a22eeca3 FindBoost: Search next to MPI libraries for boost_mpi (#14739)
Merge topic 'graphviz-one-file'

18bef4cd graphviz: allow to disable per target graphs (#14746)
Merge topic 'eclipse-hotfix'

311c0b98 Eclipse: Skip generator expressions in COMPILE_DEFINITIONS (#14722)
Merge topic 'backward-compatibility'

37e1894d cmTarget: Remove TODO comment.