Extend the explanation system's runtime value lookup to explicitly check whether
or not runtime values are available (rather than assuming that the empty value
string indicates nonexistance), and to support getting bools for appropriate
values (any Scalar value for our system).
Update the explanation of IfStmt to use the new runtime value lookup information
to give different explanations based on whether or not the condition evaluates
to true or false.