Clean up <uchar.h> and <wctype.h> transitive includes.

Bug: http://b/30367366
Change-Id: I63212a34c54ca07223a15aa5be4da3bdc6aa38a8
diff --git a/libc/include/wchar.h b/libc/include/wchar.h
index 1f0c1c5..ee75148 100644
--- a/libc/include/wchar.h
+++ b/libc/include/wchar.h
@@ -36,18 +36,12 @@
 #include <time.h>
 #include <xlocale.h>
 
+#include <bits/mbstate_t.h>
 #include <bits/wchar_limits.h>
 #include <bits/wctype.h>
 
 __BEGIN_DECLS
 
-typedef struct {
-  uint8_t __seq[4];
-#ifdef __LP64__
-  char __reserved[4];
-#endif
-} mbstate_t;
-
 enum {
     WC_TYPE_INVALID = 0,
     WC_TYPE_ALNUM,
@@ -65,8 +59,6 @@
     WC_TYPE_MAX
 };
 
-#define  WEOF        ((wint_t)(-1))
-
 wint_t            btowc(int);
 int               fwprintf(FILE *, const wchar_t *, ...);
 int               fwscanf(FILE *, const wchar_t *, ...);