Inplace versions of string std::toupper and std::tolower
Range-based for-loops

Also, dropping the support for VS2010.
Single blob of encodings supported in code