Don't panic while serializing 4 bytes utf-8 chars, just write them as character enities.
Some more minor modifications to make tdom handle 4 byte utf-8 characters right (if one gets them into a dom tree, by character entities within the xml or using parsefile). Still, accessing such pcdata beyond BMP with dom methods or xpath queries and using the result at script level will not work correctly with current tcl default build (mangled results without notification by error).
Handled this mess even further. New dom featureinfo subcommand isBMPCharData, to check, if a string has only characters out of the BMP. With TCL_UTF_MAX > 3 even 4 byte utf-8 character will be serialized as character entities only with -escapeNonASCII. With TCL_UTF_MAX = 3 (the default of the core) 4 byte utf-8 character will always be serialized als character entities, even if -escapeNonASCII is not given. If tDOM was build against a core with other TCL_UTF_MAX then the interpreter, which [load]s it, it complains and raises error. New dom featureinfo subcommand TCL_UTF_MAX, which returns the TCL_UTF_MAX value of the tcl core, tDOM was build with.
More tests in this area.
Improved check for binary compatibility.
Improvment of handling of characters beyond BMP.