De-EvalContext-ification and de-Attribute-ization of network code
Contunuing de-EvalContext-ification of network code
Further de-EvalContext-ification and de-Attributes-ization of network code
Whitespace fix
Get rid of AM_BACKGROUND_PROCESS global variable

This was achieved by simplifying handling background
processes.
Further simplify files promise verification logic
Remove unused variable
Reimplement PurgeLocalFiles

Previously it was implemented as an evaluation of files promises,
which made files promises' implementation highly entangled.

Existing DeleteDirectoryTree contains all the functionality needed
to implement PurgeLocalFiles without referring to files promises.
Don't abuse Promise to store temporary data (rootdevice)
Don't abuse Promise to store temporary data (inode_cache)
Clarify 'cache' field
Avoid invalidating package cache when only verifying

May need a per-package-method flag, as some package managers could
conceivably add or remove packages as part of a verify operation.
Fix compilation error in cf_sql.c
cf-agent-enterprise-stubs.c needs cfstream.h
Missing includes in cf-serverd-enterprise-stubs.c
Fix ifdefed prototypes for GetDefaultWorkDir
Properly kill processes holding CFEngine locks (Redmine #2330)
Standardize ScopeControlCommonGet -> EvalContextVariableControlCommonGet
Properly implement fake nanosleep in unit test
Properly calculate sleep time in ProcessWaitUntil{Stopped,Exited}