Redmine #3048: Fix configure --with-libacl.

Apparently AC_CHECK_HEADERS runs the third argument if *any* of the
headers are not found, instead of if none of them are found, so that
logic needs to be outside the loop.
Redmine #4809: Fix several filestat() fields on Windows.

Some are best-effort, like permoct will always be 666 or 444, because
the only non-ACL file attribute on Windows that maps to Unix is the
read-only attribute.
Skip several tests that use inode data on Windows.
Fix several acceptance tests after the introduction of $(G.etc_group).

The main problem is that the path contains redundant '../../' parts
and the test doesn't expect that.

Redmine #4809.
Remove MD5 HashesMatch() call...

... it's useless and dangerous since the hash was of DEFAULT digest
type.
Uninitialised variable.
We should not accept CAUTH or SAUTH a second time.
Bump shared library version.
Disable debug mode for 16_cf-serverd/01_start/002.cf as it was fixed.
Unused variable.
Properly implemented receive timeout for windows.

Changed interface of some functions to receive timeout in milliseconds,
instead of struct timeval.
RECVTIMEOUT is now unused.
Handle case of timeout set to 0, as block forever.
Guard against FD_SETSIZE limit for select()

Also document raising FD_SETSIZE for MinGW and some other
windows-specific hacks.
Remove trust which is now a flag in ConnectionFlags.
Fix out-of-bounds memory access.
Moved declaration to header file ...

... so that compiler detects interface changes in the windows enterprise
version of the function.

Also fixed typo.
Add "RANDOM" as match criterium for skipping output check on examples.

The initial motivation is for shuffle(), which has different output
depending on the random number generator in use by the platform.
Harmless grammar change to avoid confusing Emacs' syntax highlighting.
Merge pull request #1585 from kacfengine/example_shuffle_fix

Add "RANDOM" as match criterium for skipping output check on examples.