Remove end parameter from utf8_char_length
Introduce struct key_input
Add multibyte support to struct key_input

Fixes #99
Closes #105