added switch statement

added switch test program
terminator state is now tracked by IRCodegenContext
break and continue should now work in nested scope