libpromises/evalfunction.c: let mergedata() use VarRefValueToJson
RM 4074, 4940: fixups for Solaris and HP-UX in strftime.

This just hacks the format string forwarded to strftime by the
implementation of the strftime in policy language; no change to
strftime() as called by C.
Re-enable strftime acceptance test for HP-UX.
Reworked the strftime() hack to be more extensible.

Added partial support for MS-Win while I'm at it, and make
FnCallStrftime() actually return FnFailure() when it fails.
Moved the hack out into function PortablyFormatTime().
Re-enable strftime acceptance test for MS-Win.
Use fp->name in place of strftime in Log() message.

At @tzz's request, when naming the policy-language function (as
distinct from the underlying raw function for GetErrorStr()'s part) in
a Log() message, use fp->name rather than strftime.
cf-agent/verify_packages.c: Improve logging
Redmine#4847: limit peerleader() range to 2-64 as per docs
Redmine#5289: add warning when a Mustache section gets a non-iterable
Merge pull request #1600 from tzz/redmine5289-mustache-warning-non-iterable

Redmine#5289: add warning when a Mustache section gets a non-iterable
Merge pull request #1587 from tzz/refactor/mergedata/VarRefValueToJson

libpromises/evalfunction.c: let mergedata() use VarRefValueToJson
10_files/templating/mustache_section.cf: simplify with dcs_passif_output1
Optimize ClassTableMatch
Remove EvalContextHeapAddSoft
Check abort classes when adding an abort class

Rather than on every stack frame pop. Redmine #5276
Remove duplicate function CompileRegExp

Use string_lib:CompileRegex
Optimize, use precompiled regex for many built-in functions
Merge pull request #1598 from ediosyncratic/strftime-port

RM 4074, 4940, 5110: fixups for Solaris, HP-UX and MS-Win in strftime.
Fix missing header on Windows.
Merge branch 'master' of git://github.com/aappilattoq/core

Conflicts:
	tests/acceptance/01_vars/02_functions/strftime.cf