Add SemiApply and planning for it
Adds SemiApplyPipe which allows Ronja to take on some pattern predicates