remove need for the struct and enum stuff using typedefs
diff --git a/libtelnet.h b/libtelnet.h
index 972f601..f9950ee 100644
--- a/libtelnet.h
+++ b/libtelnet.h
@@ -13,8 +13,12 @@
 #define LIBTELNET_INCLUDE 1
 
 /* forward declarations */
-struct libtelnet_t;
-struct libtelnet_cb_t;
+typedef struct libtelnet_t libtelnet_t;
+typedef struct libtelnet_event_t libtelnet_event_t;
+typedef enum libtelnet_mode_t libtelnet_mode_t;
+typedef enum libtelnet_state_t libtelnet_state_t;
+typedef enum libtelnet_error_t libtelnet_error_t;
+typedef enum libtelnet_event_type_t libtelnet_event_type_t;
 
 /* telnet special values */
 #define LIBTELNET_IAC 255
@@ -141,8 +145,8 @@
 };
 
 /* event handler declaration */
-typedef void (*libtelnet_event_handler_t)(struct libtelnet_t *telnet,
-		struct libtelnet_event_t *event, void *user_data);
+typedef void (*libtelnet_event_handler_t)(libtelnet_t *telnet,
+		libtelnet_event_t *event, void *user_data);
 
 /* state tracker */
 struct libtelnet_t {
@@ -170,34 +174,32 @@
 };
 
 /* initialize a telnet state tracker */
-extern void libtelnet_init(struct libtelnet_t *telnet,
-		libtelnet_event_handler_t eh, enum libtelnet_mode_t mode,
-		void *user_data);
+extern void libtelnet_init(libtelnet_t *telnet, libtelnet_event_handler_t eh,
+		libtelnet_mode_t mode, void *user_data);
 
 /* free up any memory allocated by a state tracker */
-extern void libtelnet_free(struct libtelnet_t *telnet);
+extern void libtelnet_free(libtelnet_t *telnet);
 
 /* push a byte buffer into the state tracker */
-extern void libtelnet_push(struct libtelnet_t *telnet,
-		unsigned char *buffer, unsigned int size);
+extern void libtelnet_push(libtelnet_t *telnet, unsigned char *buffer,
+		unsigned int size);
 
 /* send an iac command */
-extern void libtelnet_send_command(struct libtelnet_t *telnet,
-		unsigned char cmd);
+extern void libtelnet_send_command(libtelnet_t *telnet, unsigned char cmd);
 
 /* send negotiation */
-extern void libtelnet_send_negotiate(struct libtelnet_t *telnet,
-		unsigned char cmd, unsigned char opt);
+extern void libtelnet_send_negotiate(libtelnet_t *telnet, unsigned char cmd,
+		unsigned char opt);
 
 /* send non-command data (escapes IAC bytes) */
-extern void libtelnet_send_data(struct libtelnet_t *telnet,
-		unsigned char *buffer, unsigned int size);
+extern void libtelnet_send_data(libtelnet_t *telnet, unsigned char *buffer,
+		unsigned int size);
 
 /* send sub-request */
-extern void libtelnet_send_subnegotiation(struct libtelnet_t *telnet,
+extern void libtelnet_send_subnegotiation(libtelnet_t *telnet,
 		unsigned char opt, unsigned char *buffer, unsigned int size);
 
 /* begin sending compressed data (server only) */
-extern void libtelnet_begin_compress2(struct libtelnet_t *telnet);
+extern void libtelnet_begin_compress2(libtelnet_t *telnet);
 
 #endif /* !defined(LIBTELNET_INCLUDE) */