Fix uninitialized memory access in switch AST node

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch fix_switch
# Changes to be committed:
#	modified:   src/aparser.c
#	modified:   v7.c
#
# Untracked files:
#	a.js
#	ast.py
#	ast1
#	ast2
#	b.js
#	c.js
#	n.js
#	orig.js
#	src/#main.c#
#	src/.#main.c
#	test
#	tests/dummy_ast.c
#	u.js
#
Merge pull request #78 from cesanta/fix_switch

Fix uninitialized memory access in switch AST node
Implement a simple AST interpreter

This interpreter traverses the AST and interprets simple statements
and expressions.

Function statements are not yet supported; it can execute a `SCRIPT`
node containing a list of statements. Basic loops, assignments and
binary expressions work. L-value support is limited to simple identifiers.

Array and object literals are supported. A rough attempt at implementing javascript
string<->numeric<->truth conversions has been made here, but with the intention of
showing the general idea of the interpreter rather than attempting to fill in the details.

Variable declaration and scopes are not implemented.

The interpreter uses the old VM runtime functions, and has to be ported to the new
VM definitions when they are ready.