Eliminate spurious type-pun warning during HP-UX GCC build.

While the "fd_set" type is defined in /usr/include/sys/_fd_macros.h as a
struct of an array of "long" values in accordance with the XPG4 standard's
requirements, the macros for the FD operations "pretend it is an array of
int32_t's so the binary layout is the same for both Narrow and Wide
processes," as described in _fd_macros.h. In the FD_SET, FD_CLR, and
FD_ISSET macros at line 101, the result is cast to an "__fd_mask *" type,
which is defined as int32_t at _fd_macros.h:82.

This conflict between the "long fds_bits[]" array in the XPG4-compliant
fd_set structure, and the cast to an int32_t - not long - pointer in the
macros, causes a type-pun warning if -Wstrict-aliasing is enabled.
The warning is merely a side effect of HP-UX working as designed,
so it can be ignored.
Merge pull request #287 from mvpel/hp_fdset_type_pun

Eliminate spurious type-pun warning during HP-UX GCC build.
Factor out comparray
Fix nfs.h inclusion guard
Fix communication.h inclusion guard
Remove config.h from logic_expressions.c, use platform.h
Speedup and improve isolation of acceptance tests

Each acceptance test used to generate a new RSA key, which added a lot of time
to acceptance test run time. RSA keys are actually used by just a tiny minority
of tests, so speed the things up by generating them only in the tests where it
matters.

Additionally, test suite pre-started several cf-serverd instances, also used by
a tiny minority of tests. Move startup/shutdown of those servers to the specific
tests itself. It also mean that actions of one test may not affect behaviour of
cf-serverd in another test.

Conflicts:
	tests/acceptance/16_cf-serverd/01_start/prepare_tests.srv
	tests/acceptance/testall
Unexport GetOwnerName
Move files_select.c to cf-agent
Unexport callback function
Remove unused functions
Unexport functions local to single module
Unexport VerifyOwner
Unexport VerifyFileChanges
Whitespace cleanup
Move CfCreateFile into cf-agent
Clean up files_operators.h file after mass move
Unexport DeviceBoundary

Conflicts:
	libpromises/prototypes3.h
Move SetSearchDevice to cf-agent

Conflicts:
	libpromises/prototypes3.h
Unexport SuspiciousFile