cmd/llgo-go: clone cmd/go

Clone of cmd/go from rev 16775:d29da2ced72b in main hg repo.

This is intended as a stop-gap for supporting the llgo
compiler and LLVM toolchain, until a solution for supporting
additional compilers has been implemented in the standard go
command.
go fmt
Update to latest go/types API changes

Types from go/types are now immutable, so I can't "fix"
variadic functions the same as before. It may be time
to create our own objects and (where necessary) types.
Various fixes

- Variadic functions handled once again
- Use go/types' NewStruct (in a pending CL)
- Fix some additional cases of Recv -> Recv()
- Misc. others