vanilla: v0.21
fixed bug in addUserFunctions

the addUserFunctions method was referring to an attribute that did not
exist.
BUGFIX: __GetOrCreateBranch not recursively creating branches correctly

The __GetOrCreateBranch function returns the branch pointed to by a set
of branch names (it "walks" down the tree) and creates any branches that
don't already exist along the way. There was a bug in the recursive
part of this function that caused problems when a config file created
nested keys directly without creating the parent branches first.
Added README.md