Merge branch 'linux'

Merging the linux branch for fixes which allow successful compilation with Clang.
GCC 4.9 Unsigned/Signed Comparison

GCC 4.9 catches unsigned/signed comparison errors that neither GCC 4.8.1 and Clang do.
Merge branch 'master' into regex_linux

Merged so that the non-regular expression engine components will build with GCC4.9.
Build Fix/Update

build.bat no longer uses a convoluted and non-portable path to GNU Make on Windows.
String Conversion to std::basic_string<T>

String objects are now implicitly convertible to std::basic_string<T>.
Merge branch 'master' into regex

Merging for Windows build system fix.