Add support for while-loop control flow. This doesn't yet include general support for terminals and reachability; that is wider than just while loops and belongs in its own PR. This also doesn't yet add support for cyclic definitions in loops; that comes with enough of its own complexity in Salsa that I want to handle it separately.