From what I can see, Emacs supports Unicode just fine. I had asked about it on the PLT discussion list, where it was explained that set-language-environment function will configure Emacs to use Unicode wherever possible. Here is the documentation:
Set up multi-lingual environment for using LANGUAGE-NAME. This sets the coding system priority and the default input method and sometimes other things. LANGUAGE-NAME should be a string which is the name of a language environment. For example, “Latin-1” specifies the character set for the major languages of Western Europe.
Here is how to get a list of valid LANGUAGE-NAMEs:
(sort (mapcar (lambda (linfo) (car linfo)) language-info-alist) 'string<)
(Execute the command C:u before evaluating it with xe to import the result into the buffer)
Here is how to set it to Unicode: