changecase: better character conversions

Moving by cursor positions gives better results, since between two
cursor positions there may be several characters, like a letter+accent
mark.

https://bugzilla.gnome.org/show_bug.cgi?id=416390