[tools] Make hb-unicode-code work with Python 3

Related to https://github.com/behdad/harfbuzz/pull/445
diff --git a/test/shaping/hb_test_tools.py b/test/shaping/hb_test_tools.py
index 7473982..052974d 100644
--- a/test/shaping/hb_test_tools.py
+++ b/test/shaping/hb_test_tools.py
@@ -46,6 +46,17 @@
 except NameError:
 	unichr = chr
 
+try:
+	unicode = unicode
+except NameError:
+	unicode = str
+
+def tounicode(s, encoding='ascii', errors='strict'):
+	if not isinstance(s, unicode):
+		return s.decode(encoding, errors)
+	else:
+		return s
+
 class ColorFormatter:
 
 	class Null:
@@ -445,7 +456,7 @@
 
 	@staticmethod
 	def decode (s):
-		return u','.join ("U+%04X" % ord (u) for u in unicode (s, 'utf-8')).encode ('utf-8')
+		return u','.join ("U+%04X" % ord (u) for u in tounicode (s, 'utf-8'))
 
 	@staticmethod
 	def parse (s):