TiddlyWeb assumes that all input and output is ~UTF-8 encoded. Internally strings are managed as unicode.
Conversion between the two formats should be limited to entry and exit points and is managed as:
unicode = str.decode('UTF-8')
string = unicode.encode('UTF-8')