Goto in Rust. For tail call optimization

It's not obvious to me that a goto is better here than just using a loop.

Also, in rust you can just use a combinator for tail recursion:

(Though I do hope one day we get become for explicit tail calls.)