Export Modbus function codes supported by libmodbus
New API for set/get response and byte timeouts

- update documentation
- 5 new tests
- updated NEWS file
- avoid include of time.h
Documentation typo
Fix C compiler compliance error
Add missing sys/select.h for QNX (closes #158)

POSIX-1.2001 for fd_set. Thanks to spider391Tang.
Avoid to use reserved identifiers for header names (closes #157)

https://www.securecoding.cert.org/confluence/display/seccode/DCL37-C.+Do+not+declare+or+define+a+reserved+identifier
Not applied to libmodbus constants for now...
Change syscall to flush serial buffer on Windows (closes #144)

Thank you AlexMaz.
Change timeout to uint32 and add 3 byte timeout tests

- add byte timeout tests (TCP backend only)
- update and improve documentation
- long timeout values are now uint32_t so it changes the API
  to disable byte timeout
[docs] drop reference to non-existent return data

The report slave id function returns the number of bytes as the _return_
value, and does not include it as the first byte in the dest buffer.

Update documentation to reflect reality.  There's no missing
functionality, just slightly confusing documentation.
Fix few missing bold on error codes of the documentation
Fix typo in message. Thanks to Perry Kundert.
Add check for protocol identifer in TCP mode
Add const on timeval argument on Windows internal API
Fix response timeout modification on connect (closes #80)

Thanks to Perry Kundert for bug report and initial patches.
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