impl Interval.join(Interval), used for merging
trying an idea: a Branch will refine branchOuts and fallOuts

this concerns abstract code only, no effects yet.
now branch greater-equal propagates forward, resolves #2