Add systemd service files
Leak-fix in FnCallRegExtract().

One of its premature returns neglected to free the arrayname.
Removing buggy undocumented feature ...

... according to discussion at
https://github.com/jimis/core/commit/d4999f291bf937ef36ee05c28149ca773b172865
Fix selectservers().

See Redmine #5458. Thanks to Bob Ingersoll for spotting it.
Add acceptance test for selectservers().
TryConnect() should return error when select() times out.
Logging in milliseconds is ugly.
Fix socket descriptor leak.
Acceptance test for selectservers() now checks failures as well as successes.

Unfortunately some requests may timeout, which means that the test will
take 30s to complete. In the future we should enable parallel test
harness to avoid waiting.
Selectservers() now logs INFO in case of timeout.
Beautify message.
Redmine #5452: add acceptance test for maparray()
tests/acceptance/README: Add git bisect notes from @cdituri in #1317
Valgrind friendly openssl, if getenv("CFENGINE_TEST_PURIFY_OPENSSL")

Even if you compile your openssl with -DPURIFY and no-asm, valgrind
still outputs a very long list of uninitialised variable warnings. It
turns out that the "blinding" feature of openssl is the culprit.
Allow JsonParse to parse primitives at top level

Also, add JsonPrimitiveTypeToString
examples/container_iteration.cf: add useful example
Merge pull request #1632 from nickanderson/contrib/systemd

Add systemd service files
tests/acceptance/bisect-acceptance.pl: automagic git bisect script.

- automagically git bisect against a supplied CFEngine acceptance test
- hunt down the commit that either introduced a regression or fixed a bug
- respects bzr's notion of yes|no -vs- git's notion of good|bad; less
  confusing when hunting down the change that _fixed_ a bug.
examples/getvalues.cf: show data container too
Spelling correction: Commerical -> Commercial