Added unicode support. Further enhancements