Fix bug in character set difference calculation
Represent character sets with unsigned chars

This is better for comparing character ranges, since
there is a definite maximum character value.