fixed all the bugs in string.c