also small fix for if and return, as they need to execute sneds and yields (not just sends), so testing for Call not SendStatement
Same same, just have to remembe to actually execute the condition if it is a send Having send a possible expression, removes one tmp variable and associated move, for a little extra work. Next return and assign (rest)
was missing a method that got lost in copy/paste also renaming to get guard to pick up tests