Reworked as/when for patterns, add unless for patterns, prepare for introduction of generic short conditionals (in form of "expr when cond [else expr2]" and "expr unless cond [else expr2]", also prepare for addition of the "with varname = expr -> expr" and "with varname = expr { ... }" constructs