Truncate data from response in report_slave_id to new max arg (closes #167)

Change API of function for libmodbus v3.2.0
Conditional include of socket.h or winsock2 in tests (closes #169)

Thanks to MarjanTomas.
Define and public export of MODBUS_MAX_PDU_LENGTH (closes #167)
Fix MinGW make error 'MSG_NOSIGNAL' undeclared (closes #175)

Thank you Marjan Tomas.
Fix bswap macros for Microsoft Visual Studio C 2006 or newer
MinGW make type warning in modbus-rtu.c (closes #181)

Thanks to Marjan Tomas
MinGW make type warning in unit-test-server.c (closes #180)

Thanks to Marjan Tomas
Compiling with -Werror=pendantic produces an error (closes #183)
Initialize device argument to NULL on malloc (closes #184)
Convenient assert macro for unit testing

It's never too late to remove 261 lines of code ;)
win32: init of modbus_tcp_pi_listen (#187)
win32: improve way to get current tick count in tests {#187)

Thanks to vgrin for the report
Allow to listen any hosts in IPv6 (closes #32)

- allow an empty string or NULL for node argument
- protect against NULL in service argument
- new test for NULL service
- update documentation
Updated NEWS file
Filter of IP addresses in IPv4 server (closes #190)

- protect against NULL IP address BTW
- update documentation
So many boring changes to the documentation ;)
INADDR_* macros are defined in host byte order

From Michael Heimpold:
Just a nitpick: the INADDR_* macros are defined in host byte order,
compare INADDR_LOOPBACK. So it would be reasonable to wrap this with
htonl(INADDR_ANY). However, every experienced socket programmer should
know that INADDR_ANY equals 0.0.0.0, passing it through htonl does not
have any effect.
Fix 24a05ebd3c0 - win32: init of modbus_tcp_pi_listen (#187)
Fix TCP IPv4 modbus_connect() on win32 (closes #100 and #165)

Thank you Petr Gladkiy and MarjanTomas.
Sorry for the delay...
Fix compilation with MinGW (GCC 4.8.1) under Win7 (closes #163)

Thank you MarjanTomas and SwissKnife.