Optimized include/*.h: (recursively) include all headers needed by
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.

diff --git a/files/change.c b/files/change.c
index 6e81b4e..2aa1a1e 100644
--- a/files/change.c
+++ b/files/change.c
@@ -9,7 +9,6 @@
 #include <unistd.h>
 #include <string.h>
 #include <time.h>
-#include "windows.h"
 #include "winbase.h"
 #include "winerror.h"
 #include "process.h"
diff --git a/files/dos_fs.c b/files/dos_fs.c
index 22c0ed2..baf5566 100644
--- a/files/dos_fs.c
+++ b/files/dos_fs.c
@@ -19,7 +19,9 @@
 #include <time.h>
 #include <unistd.h>
 
-#include "windows.h"
+#include "windef.h"
+#include "winuser.h"
+#include "wine/winbase16.h"
 #include "winerror.h"
 #include "drive.h"
 #include "file.h"
diff --git a/files/file.c b/files/file.c
index 9768cac..c596564 100644
--- a/files/file.c
+++ b/files/file.c
@@ -24,8 +24,11 @@
 #include <unistd.h>
 #include <utime.h>
 
-#include "windows.h"
 #include "winerror.h"
+#include "windef.h"
+#include "winbase.h"
+#include "wine/winbase16.h"
+#include "wine/winestring.h"
 #include "drive.h"
 #include "device.h"
 #include "file.h"
diff --git a/files/profile.c b/files/profile.c
index 8f4943e..05c67f3 100644
--- a/files/profile.c
+++ b/files/profile.c
@@ -11,7 +11,9 @@
 
 #include <sys/stat.h>
 
-#include "windows.h"
+#include "winbase.h"
+#include "wine/winbase16.h"
+#include "winuser.h"
 #include "file.h"
 #include "heap.h"
 #include "debug.h"