multithread support added, TRACEx macros expanded to support unicode