Merge pull request #1139 from awsiv/3.5.x

Update version info in promises.cf and update.cf
Added safe wrappers to creat, chown, lchown and chmod.

To prevent race conditions in path lookup when we change attributes.

Continuation of issue #3693.
(cherry picked from commit 8e9b258aaead20584c18709932cf3bd3b7613712)

Conflicts:

	libcompat/fstatat.c
	libcompat/openat.c
	libpromises/files_copy.c
Merge pull request #1142 from kacfengine/safe_stuff_3.5.x

[3.5.x] Added safe wrappers to creat, chown, lchown and chmod.
Remove leftover comment.
Fix cf-serverd not reloading policies when they have changed.

The root of the problem was that the code to check for updated
promises was shared between cf-agent/cf-promises and the daemons, but
they have different semantics. cf-agent/cf-promises need to check
whether any files have changed so they can update
cf_promises_validated. To do this, a check that compares
cf_promises_validated to each file in inputs is needed, which is what
the existing code is doing.

The daemons however, need to compare the modification time of
cf_promises_validated against the time that they last reloaded the
policies, which is a value that should be kept in memory.

This was fixed by running a simple stat in the daemons and comparing
that to the time of the last seen cf_promises_validated. Also made
sure that cf-agent is the only one updating the cf_promises_validated
file. It's not the daemons' responsibility to do this.

Redmine #3809.
Merge pull request #1152 from kacfengine/policy_reload_fix

Fix cf-serverd not reloading policies when they have changed.
Added ChangeLog entry.
allow non-root user bootstrap