Specialize branched loops

Continuation of PR #469 inside the main repo.
Would it help much to use StmtOrExpr to hold the IR for the branch? I saw a few bits of code that seemed to use these two fields as if it would have been helpful (make_branch, for one).