New thread.c from Sjoerd, supports _exit_prog().  Use this in goaway()
to avoid hanging in cleanup().
diff --git a/Include/pythread.h b/Include/pythread.h
index 91bac2a..fb2ff48 100644
--- a/Include/pythread.h
+++ b/Include/pythread.h
@@ -10,6 +10,7 @@
 void init_thread _P((void));
 int start_new_thread _P((void (*)(void *), void *));
 void exit_thread _P((void));
+void _exit_thread _P((void));
 
 typedef void *type_lock;
 
@@ -20,7 +21,15 @@
 #define NOWAIT_LOCK	0
 void release_lock _P((type_lock));
 
+typedef void *type_sema;
+
+type_sema allocate_sema _P((int));
+void free_sema _P((type_sema));
+void down_sema _P((type_sema));
+void up_sema _P((type_sema));
+
 void exit_prog _P((int));
+void _exit_prog _P((int));
 
 #undef _P