New wsgiapp module
Changes from previous:
1. More appropriate WSGI error handling (pass exc_info to start_response).
2. Hooks into the request chain earlier. The old one duplicated a lot of _cphttptools.doRequest. The new one calls it directly.
3. Old one didn't handle SCRIPT_NAME when building HTTP request line.
4. Old one buffered entire output in a StringIO, then parsed out headers. New one uses the "write callable" hack as described in PEP 333, so output can be iterative (unbuffered).
5. While parsing out the headers, the old module had potential infinite loops if application output was not valid.
6. PEP 333 (WSGI) requires a Reason-phrase for HTTP status. This is enforced in the new module.
7. onStart/StopThreadList, onStart/StopServerList now supported.
8. Placed test code into /test.testwsgiapp.py. Just for fun, added a true iterative output test (calls time.sleep to verify that the output is not buffered, which e.g. the generator tutorial does not do; hint, hint ;).
Reported by firstname.lastname@example.org