Ensure toUpper/LowerCase is not locale dependent

Fixed many instances of the Turkish i bug.

Spare a thought for the poor Turks next time you use String.toLowerCase or String.toUpperCase!