Patches are welcome.
So I fixed the behaviour of 'break' and 'continue' while I was at it, that was actually quite a lot of searching and puzzling before I could get started.
- break and break n would end all loops.
- continue too (probably, untested)
- update curr_exec_result after breaking or continuing a loop or switch