NF: add ability to set home directory

So Yarick doesn't lose his gitconfig file.
NF: add ability to set prompt_prefix

All subclasses to set prompt prefix.
RF: attach params to directive

Attach params to directive rather than returning from method.
RF: move commit getting machinery into autorun

Move code to get commit as variable into autorun.
NF: add working-on-laptop directives.
Update curious_git to use new directives
NF: omit_link flag to AddVars directive

Allow directive to omit writing a link into the substitution file.
RF: rename AddVars to CmdAddVar

Rename derived classes and directive names.
WIP: trying to get run / render vars working

Refactoring to three categories of substitutions.
NF: postprocessing for code output

We need to do replacements on the code output because it is showing real
directories rather than the ones we are pretending to use.
BF: fix reference for two dots log
BF: more dollars need escaping