Removed redundant include of winbase.h from winuser16.h.
Moved types from winbase.h to winuser16.h .

diff --git a/include/wine/winuser16.h b/include/wine/winuser16.h
index ad26789..15f3ad0 100644
--- a/include/wine/winuser16.h
+++ b/include/wine/winuser16.h
@@ -1,12 +1,59 @@
 #ifndef __WINE_WINUSER16_H
 #define __WINE_WINUSER16_H
 
-#include "windef.h"
-#include "winbase.h"
-#include "winuser.h"
+#include "winuser.h" /* winuser.h needed for MSGBOXCALLBACK */
+                     /* wingdi.h needed for COLORREF */
+
+
 
 #include "pshpack1.h"
 
+typedef struct tagCOMSTAT16
+{
+    BYTE   status;
+    UINT16 cbInQue WINE_PACKED;
+    UINT16 cbOutQue WINE_PACKED;
+} COMSTAT16,*LPCOMSTAT16;
+
+typedef struct tagDCB16
+{
+    BYTE   Id;
+    UINT16 BaudRate WINE_PACKED;
+    BYTE   ByteSize;
+    BYTE   Parity;
+    BYTE   StopBits;
+    UINT16 RlsTimeout;
+    UINT16 CtsTimeout;
+    UINT16 DsrTimeout;
+
+    unsigned fBinary        :1;
+    unsigned fRtsDisable    :1;
+    unsigned fParity        :1;
+    unsigned fOutxCtsFlow   :1;
+    unsigned fOutxDsrFlow   :1;
+    unsigned fDummy         :2;
+    unsigned fDtrDisable    :1;
+
+    unsigned fOutX          :1;
+    unsigned fInX           :1;
+    unsigned fPeChar        :1;
+    unsigned fNull          :1;
+    unsigned fChEvt         :1;
+    unsigned fDtrflow       :1;
+    unsigned fRtsflow       :1;
+    unsigned fDummy2        :1;
+
+    CHAR   XonChar;
+    CHAR   XoffChar;
+    UINT16 XonLim;
+    UINT16 XoffLim;
+    CHAR   PeChar;
+    CHAR   EofChar;
+    CHAR   EvtChar;
+    UINT16 TxDelay WINE_PACKED;
+} DCB16, *LPDCB16;
+
+
   /* SetWindowPlacement() struct */
 typedef struct
 {
diff --git a/misc/spooler.c b/misc/spooler.c
index 56ab4d7..dbddc29 100644
--- a/misc/spooler.c
+++ b/misc/spooler.c
@@ -12,12 +12,13 @@
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
+#include "winbase.h"
+#include "wine/winuser16.h"
 #include "callback.h"
 #include "dc.h"
 #include "debug.h"
 #include "gdi.h"
 #include "options.h"
-#include "wine/winuser16.h"
 #include "winerror.h"
 #include "xmalloc.h"
 
diff --git a/multimedia/time.c b/multimedia/time.c
index d7d41b2..a730303 100644
--- a/multimedia/time.c
+++ b/multimedia/time.c
@@ -9,7 +9,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
-#include "windef.h"
+#include "winbase.h"
 #include "wine/winbase16.h" /* GetTaskDS */
 #include "callback.h"
 #include "mmsystem.h"
diff --git a/objects/dib.c b/objects/dib.c
index 923ce32..017ac72 100644
--- a/objects/dib.c
+++ b/objects/dib.c
@@ -5,6 +5,7 @@
  *
  */
 
+#include "winbase.h"
 #include "bitmap.h"
 #include "callback.h"
 #include "dc.h"
diff --git a/objects/palette.c b/objects/palette.c
index cc51a5a..988f173 100644
--- a/objects/palette.c
+++ b/objects/palette.c
@@ -11,12 +11,13 @@
 #include <stdlib.h>
 #include <string.h>
 
+#include "winbase.h"
+#include "wine/winuser16.h"
 #include "gdi.h"
 #include "color.h"
 #include "palette.h"
 #include "xmalloc.h"
 #include "debug.h"
-#include "wine/winuser16.h"
 
 DEFAULT_DEBUG_CHANNEL(palette)