tuxeip: add missing headers

Ethernet_IP.c: close() requires unistd.h
SendData.c: getdtablesize() requires unistd.h
readtag.c: replace obsolete bzero(), fix undefined behavior

bzero() is obsolete, use memset() instead
can't compare char* with string literal directly, assuming that the
check was to see if there's a newline at the beginning of the format
string
readtag.c: fix typos
SendData.c: fix headers/defines for MinGW

io.h is only needed under MSVC (for close()), otherwise use unistd.h
MSG_WAITALL isn't defined in winsock2.h under MinGW
readtag.c: initial fixes for MinGW

no syslog on win32
SIGIO define missing under MinGW's signal.h
%ld expects long int
Clang fixes

-Wshadow in MR.c, size was already used
CM.c: pointer arithmetic on void* is a GNU extension
SendData.h: add extern for -Wmissing-variable-declarations
ErrCodes.c/h: format string for LogCip() should be const
AB.h: add missing enumerations
readtag.c: eliminate unnecessary debug output

Only read twice in Connect() if writing
tuxeip: fixes for winsock2

MSVC needs io.h for close() in Ethernet_IP.c
Add WSACleanup() calls after close()'s for win32
Must call WSAStartup() before using a socket under winsock
Version 2.2 was released in 1997, safe to assume we can use it instead.