Add CJK codecs support as discussed on python-dev. (SF #873597)

Several style fixes are suggested by Martin v. Loewis and
Marc-Andre Lemburg. Thanks!
diff --git a/setup.py b/setup.py
index 39873d3..7e2fdd4 100644
--- a/setup.py
+++ b/setup.py
@@ -756,6 +756,19 @@
                                          ],
                               ))
 
+        # Hye-Shik Chang's CJKCodecs modules.
+        exts.append(Extension('_multibytecodec',
+                              ['cjkcodecs/multibytecodec.c']))
+        for loc in ('ja_JP', 'ko_KR', 'zh_CN', 'zh_TW'):
+            exts.append(Extension('_codecs_mapdata_' + loc,
+                                  ['cjkcodecs/mapdata_%s.c' % loc]))
+        for enc in ('shift_jis', 'cp932', 'euc_jp', 'iso2022_jp',
+                    'iso2022_jp_1', 'iso2022_jp_2', 'iso2022_jp_3',
+                    'iso2022_jp_ext', 'shift_jisx0213', 'euc_jisx0213',
+                    'euc_kr', 'cp949', 'johab', 'iso2022_kr', 'gb2312',
+                    'gbk', 'gb18030', 'hz', 'big5', 'cp950'):
+            exts.append(Extension('_codecs_' + enc, ['cjkcodecs/_%s.c' % enc]))
+
         # Dynamic loading module
         if sys.maxint == 0x7fffffff:
             # This requires sizeof(int) == sizeof(long) == sizeof(char*)