Fixup LPC switch problem, add tests.

This commit added a detailed switch test that covers all
possible LPC swtich cases.

Also resolved an existing problem under 32bit mode, switch case
constant was being stored as an POINTER_INT, which is
not enough for storing LPC numbers on 32bit platform, see
grammar.y.pre for details.

This fix also fixed generated icode for storing switch cases,
it now correctly generate lookup entry with  LPC_INT(key) +
short(offset), see icode.c for details.