ifdef / else error tests
fix a test that shouldn't fail
discovery horrible problem in PrerequiteList.makefile() now dusting off and getting rule_test working again
update to the new ConditionalBlock ifdef/elseif/else/endif container
create new ConditionalBlock class to hold ifdef/elseif/else/endif blocks instead of trying to cram everything into the ConditionalExpression; better way to parse conditional blocks; clean up the ParseError constructor; start fixing PrerequisiteList