Change the string header of NODE* from char* to unsigned short*
Although it's not obvious, this adds some type safety because the header was always treated as a reference count (unsigned short), not a char*.
This was done to help prepare the code for being ported to Unicode, as the size of the header won't change, even if the size of a character does.