add utf8 support
a
made it work with windows, many unecessary changes