update parseucd.lua to generate unprintable character in unicode
add widthindex() to map a location in string to character index (reverse function of width)
upper/lower/title/fold/width now support number argument (to convert a single code point)