Handle a few more options used by the libgo test suite
Mangle the name of the import function
When converting to/from slice types, also check the underlying type of the slice element

No tests for slice to string conversions, as gc doesn't appear to allow these
(gccgo does, and the spec is somewhat ambiguous on this point).
Register GC roots
Strings have pointers too
Fixes for how function types are stored in method and imethod tables

The runtime expects these to be stored without a receiver type. Also,
fix a minor mismanglement.
Give unsafe.Pointer constants the correct type
Fetch the recover basic block after building the call to __go_recover

If the function uses defer, we will create a new basic block to hold the
continuation, which must be the predecessor used by the phi.
Merge pull request #148 from pcc/libgo-ts

Misc fixes for the libgo test suite