Move all remaining types to cabi
Drop the pointer target field from ptrBType
Implement libgo's scheme for deciding whether to store an interface value directly in the pointer.

Specifically, it only does so when the value is itself a pointer (i.e. a Go
pointer, and in particular not a type with a pointer backend representation,
such as a map).
Use the correct ABI for interface method calls
Interface comparisons
Interface-to-value type assertions