Major components:
- Dictionaries: These used to be python dictionaries, but memory usage
was too high, so they were replaced with a sqlite back end and a short
class providing all the dictionary functionality I used. They map
compatibility characters, radicals, phonetics, definitions, etc.
- Request handler: relatively standard code for handling requests
for definition and cross-reference pages. Uses plain Twisted to
minimize external dependencies.
- Rewriting Proxy: this is the difficult one.