Make CFLAGS overridable.

If $CFLAGS is not last in the assignment, then you cannot override
flags like -O2.
Redmine#4096: data_readstringarray and data_readstringarrayidx functions
Redmine#4096: filter(), grep(), every(), some(), none() support for data containers
Redmine#4096: min(), max(), mean(), variance() support for data containers
Redmine#4096: join() support for data containers
Fatuous spelling fix: s/indeces/indices/g
verify_services: bail out with error if some service cannot be resolved

Rather than the assertion (which can even be no-oped in compile time),
which would kill cf-agent, exit the promise with a failure.
Add path to crontabs on FreeBSD
examples/appgroups.cf: improve logic and comments
Merge pull request #1347 from skreuzer/fbsd-cron

Add path to crontabs on FreeBSD
examples/appgroups.cf: improve comments further and condense output
Minor fix.
Fix EXEC protocol command.
Honour maxsize parameter in parse*array functions.

The maxsize parameter was previously ignored, aside from Log()ging,
contrary to specification.  Added an acceptance test.
Fix documentation of parse*array and read*array functions.

The prior documentation was incomplete, confusing and wrong.  The
functions do a rather complex job that it's not easy to document
tersely, but here's my best shot at doing so.

The separate *_ARGS structs for the *stringarrayidx functions were
superfluous - the ones from the plain *stringarray can be used without
change, just as for the *intarray and *realarray functions - and the
one for readstringarrayidx was just plain wrong (talking about an
input string where it should have mentioned a file-name; obvious
copy-and-paste from the readstringarrayidx one).

Fixed a misindentation.
Undeprecate admit/deny.
verify_services: fix typo in message

As noticed by Chris Dituri
Fix QUERY protocol command.
Redmine#4096: teach mergedata() how to merge classic CFE arrays
libpromises/evalfunction.c: rename JsonPrimitiveAsString to JsonPrimitiveToString