Redesign of the server communication protocol to allow arbitrary sized
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.

diff --git a/windows/message.c b/windows/message.c
index 8743e7b..fdd7981 100644
--- a/windows/message.c
+++ b/windows/message.c
@@ -109,7 +109,7 @@
         req->time   = msg->time;
         req->info   = extra_info;
         req->timeout = 0;
-        SERVER_CALL();
+        wine_server_call( req );
     }
     SERVER_END_REQ;
 }
@@ -707,7 +707,7 @@
         req->wake_mask    = (flags & MWMO_INPUTAVAILABLE) ? mask : 0;
         req->changed_mask = mask;
         req->skip_wait    = 0;
-        SERVER_CALL();
+        wine_server_call( req );
     }
     SERVER_END_REQ;
 
@@ -751,7 +751,7 @@
     {
         req->handle = hProcess;
         req->timeout = dwTimeOut;
-        if (!(ret = SERVER_CALL_ERR())) idle_event = req->event;
+        if (!(ret = wine_server_call_err( req ))) idle_event = reply->event;
     }
     SERVER_END_REQ;
     if (ret) return WAIT_FAILED;  /* error */