Break loop correctly

The break statements in the loop just break the switch and not outer loop.  The tag allows the break statements to actually break the loop and stop unnecessary loops.

http://golang.org/doc/effective_go.html#switch
Okay, okay, but Rob Pike will not approve this :)