qif with no else, and cache qfunction on argument values.
Add unit test for control flow.

In order to pass, needed to add comparison operators to Pulse, CompositePulse,
PulseBlock, ControlInstruction, ComparisonInstruction, and BlockLabel.