Fix for error parsing umlaut from file.

There was a bug (based on the fact that bytes are signed) meaning
that some unicode would report control-characters when being parsed
from a file.

This commit has a test that catches the issue, and makes a small
change to fix it.

(Fixes #13.)