Implement string indexing, string range

There are some caveats on string range,
but it works fine today. See the comments
in ssa.go on the Next instruction.
Reimplement struct comparison
Fix compareInterfaces for nil operands
Reimplement go statements
Reimplement defer

Note: had to override panic/recover in the TestDefer,
as they are currently implemented.