Change StringSetFromString implementation, strtok -> strsep
Remove base stack frame in EvalContext
Actually pop stack in EvalContextStackPopFrame.

I managed to leave this unimplemented, but for some reason it passed
all the tests. My bad.
Do not 'cache' namespace on struct Promise

The assumption is that there are no more orphan Promises floating around.
Do not cache subtype name on Promise
Attach ad-hoc aptosis promise in cf-execd
Add debug_mode to GenericAgentConfig
Do not cache bundle type on Promise
Do not cache bundle name on Promise
Add createrepo path for redhat and debian
A sketch wants to use this.
Fix regression with referencing paths in stdlib
The short path notation was being set to its own name instead of path.
Merge pull request #411 from nickanderson/feature/masterfiles/libraries/stdlib/paths/createrepo

cfengine_stdlib.cf: Fix regression with path style and add createrepo paths for redhat and debian
Remove extra whitespace from cfengine_stdlib.cf

No functional changes, only whitespace is changed
Merge pull request #413 from chrishiestand/stdlib-whitespace

cfengine_stdlib.cf: Remove extra whitespace
Add missing trailing newlines
Rename SubType to PromiseType (Redmine #2125)
Split transaction.[ch] (Redmine #2072)

transaction.c contained four separate pieces of code:
 - CFEngine language-level promise locks (split to locks.h)
 - Wrappers for pthread mutexes (split to mutex.h)
 - Logging utility function (moved to logging.c)
 - Utility function for cf-execd (moved to cf-execd-runner.c)
Document side-effects of functions in matching.c
open(2) does not need to be mutex-protected. Really.
malloc(3) does not need to be protected by mutex