Updated the lowercase routine to preserve utf-8

As part of normalization, I was using Java's String.toLowerCase()
method.  This changes utf-8 values, corrupting the encoding.