Use the standard CreateThread routine to create 16-bit tasks instead
of duplicating the code.

diff --git a/include/module.h b/include/module.h
index 72683da..ed89987 100644
--- a/include/module.h
+++ b/include/module.h
@@ -186,6 +186,7 @@
 extern FARPROC16 NE_GetEntryPointEx( HMODULE16 hModule, WORD ordinal, BOOL16 snoop );
 extern BOOL16 NE_SetEntryPoint( HMODULE16 hModule, WORD ordinal, WORD offset );
 extern HANDLE NE_OpenFile( NE_MODULE *pModule );
+extern DWORD NE_StartTask(void);
 
 /* loader/ne/resource.c */
 extern HGLOBAL16 WINAPI NE_DefResourceHandler(HGLOBAL16,HMODULE16,HRSRC16);
diff --git a/include/task.h b/include/task.h
index 7a6b725..5530947 100644
--- a/include/task.h
+++ b/include/task.h
@@ -145,8 +145,9 @@
 
 extern THHOOK *pThhook;
 
-extern BOOL TASK_Create( struct _NE_MODULE *pModule, UINT16 cmdShow,
-                         struct _TEB *teb, LPCSTR cmdline, BYTE len );
+extern void TASK_CreateMainTask(void);
+extern HTASK TASK_SpawnTask( struct _NE_MODULE *pModule, WORD cmdShow,
+                             LPCSTR cmdline, BYTE len, HANDLE *hThread );
 extern void TASK_ExitTask(void);
 extern HTASK16 TASK_GetNextTask( HTASK16 hTask );
 extern void TASK_Reschedule(void);
diff --git a/include/thread.h b/include/thread.h
index faf7ba8..7d84170 100644
--- a/include/thread.h
+++ b/include/thread.h
@@ -125,8 +125,7 @@
 
 /* scheduler/thread.c */
 extern void THREAD_Init(void);
-extern TEB *THREAD_Create( int fd, DWORD stack_size, BOOL alloc_stack16 );
-extern TEB *THREAD_InitStack( TEB *teb, DWORD stack_size, BOOL alloc_stack16 );
+extern TEB *THREAD_InitStack( TEB *teb, DWORD stack_size );
 extern BOOL THREAD_IsWin16( TEB *thdb );
 extern TEB *THREAD_IdToTEB( DWORD id );