cf-promises no longer checks licenses
Add a compatibility function for timegm(3)
Get rid of VYEAR/VMONTH/VDAY/VSHIFT, use CFSTARTTIME instead
No need to cast time_t to long and back
libpromises/evalfunction.c: treat bad data as 0 for mean and variance
Merge pull request #1250 from tzz/feature/list-folding-utility-functions2

libpromises/evalfunction.c: treat bad data as 0 for mean and variance
Redmine#3279: datatype(), a function which returns the top-level type of a data container
Redmine#3279: datatype() acceptance test
Merge pull request #1252 from sigurdteigen/cleanup/constify

Constify EvalContextVariableGet
Merge pull request #1248 from dottedmag/refactoring/disentangle-initialization

Refactoring/disentangle initialization
Redmine#3972: passing data containers to a bundle
Move 'Resolving variables in bundle(...) message from verbose to debug output
Merge pull request #1253 from tzz/test/3972-passing-data-container-to-bundle

Redmine#3972: passing data containers to a bundle
Merge pull request #1255 from lpefferkorn/reduced_verbosity

Move 'Resolving variables in bundle(...) message to debug output
Add missing setenv() for Windows.
Fix incorrect function call in timegm.c.
Cleanup AcquireLock
Remove unused AcquireLockByID, InvalidateLockTime
The argument to timegm() is not const-qualified.

This is emulation of a system function which doesn't const-qualify.
Furthermore, it calls mktime(), which does modify the struct tm.
Add SoftDelete for map datatype