First draft of basic/pointer types
Most of the rest of the types
go fmt
struct mangling; use the correct output from the mangler
Interface types, linkage, (partial) algo functions
Merge remote-tracking branch 'origin/ssa' into ssa

Conflicts:
	typemap.go

Also updated to latest go/types.
Merge remote-tracking branch 'origin/master' into ssa

Conflicts:
	compiler.go
	importer/exports.go
	typemap.go
initial draft of cabi.go
Fix int pointer size
Merge remote-tracking branch 'origin/master' into ssa
cabi checkpoint
directDecode
more
almost
tuples
WIP println changes
Merge remote-tracking branch 'origin/master' into libgo

And mostly fix build errors.

Conflicts:
	compiler.go
	typemap.go
checkpoint
Fix indirect.go. Still need to make it emit the thunk body.

Also, pull at the createMalloc thread and do a whole bunch of
refactoring.
Kill prepareCall and replace it with callInstruction and callBuiltin which form the call IR directly.