Changed some design stuff
Added string encoding to handle utf-8 strs