string_bytes: further optimize extern usage

Further optimization has been done on usage of external strings. Also
found this affects two byte strings the same way. So the name has been
changed for when UCS2 encodings also support external strings.