Faster string comparison functions in StringUtils

The methods EqualsNoCase(), StartsWith() and EndsWith() required quite a lot
of unncessary creation and destruction of std::strings, whether it be the
creation of a temporary copy that could be forced to lower-case, a temporary
copy that was a substring of one of the inputs, or just marshalling a
string literal argument into a std::string.

These functions don't appear to be used all that much at the moment; when I
profiled opening the songs library, I saw only a 1% improvement, which was
within the sampling noise threshold. But with PR #3225 and PR #3290 coming
along, that looks set to change. Once the functions are being called millions
of times, those heap operations really start to get noticeable.

Also, split StartsWith() and EndsWith() into multiple separately-named
functions, according to case sensitivity. Formerly, there was an optional
parameter (default off) to indicate that these operations were
case-*sensitive*, which is actually computationally simpler to perform. Now
the naming convention is consistent with EqualsNoCase:
  StartsWith       - case-sensitive
  EndsWith         - case-sensitive
  StartsWithNoCase - case-insensitive
  EndsWithNoCase   - case-insensitive

With the case-sensitive versions now easier to type, it will hopefully
encourage future developers to use them in preference.
Merge pull request #3292 from bavison/faster_string_comparisons

Faster string comparison functions in StringUtils
Merge pull request #3272 from MartijnKaijser/win32_remove

[win32] cleanup VS2010 build solutions
Merge pull request #3137 from jmbreuer/upstream-sortby

Differentiate between "unsorted" and "unsortable"
[fix] Allow the use of external subtitles for DVDs
gles, fixed, more missing code
allow external .sub subtitles next to text-based ones
[release] version bump to 13.0 alpha9 as we start new merge window.
Merge pull request #3317 from Karlson2k/charsetconverter_rework_02

CharsetСonverter rework - Part 2
changed: Implement ChapterOrBigStep-actions and make previous BigStep-actions without chapter seeking
Merge pull request #3263 from fetzerch/bugfix-osdchannels

pvr: Fix crash when opening PVROSDChannels while playing a recording
[win32] update package list
changed, add a proper GUI selector for AMLogic video decoder, refactor AMLogic bits in AESinkAUDIOTRACK
ffmpeg: backport swresample: Make rematrix maxvalue user settable
ffmpeg: add patch for backport swresample: Make rematrix maxvalue user settable
ActiveAE: clamp float values after having mixed audio
ActiveAE: tell resampler to clamp floats
[win32] remove unused .exe file
[darwin] remove unused buildbot files
ActiveAE: check for sink errors, WASAPI returns INT_MAX on error