work on unicode, specificyally string related functions
merge