Rewrote handling of COM and LPT devices to use symlinks in
$WINEPREFIX/dosdevices, with suitable defaults if the symlinks are
missing.
Rewrote QueryDosDevice and DefineDosDevice to use the new scheme.
Added temporary code to create the symlinks based on the contents of
the config file.

diff --git a/dlls/kernel/kernel_main.c b/dlls/kernel/kernel_main.c
index 49e39b0..e6dc0b7 100644
--- a/dlls/kernel/kernel_main.c
+++ b/dlls/kernel/kernel_main.c
@@ -50,6 +50,7 @@
 extern void COMPUTERNAME_Init(void);
 
 extern  int __wine_set_signal_handler(unsigned, int (*)(unsigned));
+extern void VOLUME_CreateDevices(void);
 /* memory/environ.c */
 extern void ENV_CopyStartupInformation(void);
 
@@ -125,7 +126,10 @@
 
     /* Setup computer name */
     COMPUTERNAME_Init();
-    
+
+    /* Create device symlinks */
+    VOLUME_CreateDevices();
+
     /* copy process information from ntdll */
     ENV_CopyStartupInformation();