string: Tolerate SUBSTRING length exceeding end index

string SUBSTRING command now ignores length if it points
past end of string and uses end of string instead.
String SUBSTRING tests now cover more corner cases.
cmCallVisualStudioMacro: fix a shadowing warning
cmVisualStudio10TargetGenerator: fix a narrowing warning

0xAA literals are integers which doesn't fit into a char array. C++11
says this is an error and VS2015 now warns about it.
Tests: Test add_custom_command and add_custom_target error cases

Add RunCMake.add_custom_command and RunCMake.add_custom_target tests to
cover the error messages for these commands.
Rename doing_verbatim to doing_nothing

We are about to introduce another property here, so give this
a better name.
Add USES_TERMINAL option for custom commands

Teach the add_custom_command and add_custom_target commands a new
USES_TERMINAL option.  Use it to tell the generator to give the command
direct access to the terminal if possible.
Give the interactive cache editor the USES_TERMINAL property
Ninja: factor out the test for console pool support
Ninja: Remove unused declaration
Ninja: Implement USES_TERMINAL using the console pool if available
Help: Add notes for topic 'console-pool'
CPackRPM: remove unneeded string length calculation

This wants just the rest of the string, which can be achieved by passing -1 as
remainder length.
KWSys SharedForward: Hard-code the ldpath buffer size to below VS 14 limit

Visual Studio 14 (2015) complains if a static character array is
declared with more than 65535 elements.  This limit should be large
enough for SharedForward clients, so just hard-code that instead of
trying to compute a limit.
VS: Rename VS 14 generator to 'Visual Studio 14 2015'

Now that we know the year component of this VS version we
can add it to the generator name.  For convenience, map
the name without the year to the name with the year.
Merge topic 'string-SUBSTRING-truncate'

474bbb9d string: Tolerate SUBSTRING length exceeding end index
Merge topic 'CPackRPM_SUBSTRING_-1'

5cc8169b CPackRPM: remove unneeded string length calculation
Merge topic 'fix-vs2015-warnings'

b138be07 cmVisualStudio10TargetGenerator: fix a narrowing warning
8d379cd7 cmCallVisualStudioMacro: fix a shadowing warning
Merge topic 'vs14-is-2015'

f5afb90d VS: Rename VS 14 generator to 'Visual Studio 14 2015'
Merge topic 'test-custom-command-errors'

39baf728 Tests: Test add_custom_command and add_custom_target error cases
Merge topic 'console-pool'

2d75d7e5 Help: Add notes for topic 'console-pool'
f42d86f0 Ninja: Implement USES_TERMINAL using the console pool if available
f281ae01 Ninja: Remove unused declaration
d5eae556 Ninja: factor out the test for console pool support
4d1fedf4 Give the interactive cache editor the USES_TERMINAL property
fe5d6e8c Add USES_TERMINAL option for custom commands
ad6ee426 Rename doing_verbatim to doing_nothing