String.search() corrected to return UTF-8 string shift
some optimizations
String.replace() is implemented