Update for OS X build after EvalContext introduction
Move StringMap into map.h
Get rid of CFPRIVKEYFILE/CFPUBKEYFILE globals
Make use of thread-safe HashPrintSafe
Fix constness of pointer
Bring stack into EvalContext
Remove unused functions after bringing stack into EvalContext
Remove DELCLASSES, move into EvalContext stack
Get rid of StartJoin

StartJoin was used to generate JSON and serialized representation of
Rlist. Writer and JsonElement-based implementations were added instead of
relying on static-size buffers.
Move VHANDLES into EvalContext

This is the tracking of depends_on.
Remove Alphalist

Replace remaining uses with StringSet
Remove unused decl ShowScope
Document what functions in scope.h do
Standardize naming for Scope related functions

But hopefully, Scope will be moved into EvalContext soon, and be
replaced by a proper symbol table.
fix typo for missing -expansion in rhel install instructions
clarify bundlesequence and input mods
Add dmidecode and alphabetize debian paths
Suppress duplicate selection of value for ping
Per discussion here
https://github.com/cfengine/core/pull/373#issuecomment-13969241
It makes sense for identical os paths to be grouped, but if there is any
difference in a path it should be seperated to avoid context soup. So I
have moved ping into each os context and while doing that alphabatized
the commands.
Add context class for when paths exist
JoinSilent is no longer used