llgo: changes due to *ast.Object removal from go/types
llgo: More fixes

Note the change in testdata/slices/sliceexpr.go: go/types expects
at least one parameter for print/println, whereas gc allows zero.
I think this ought to be changed in go/types, as it will error on
code that passes gc.
cmd/llgo: Change switch/scope test to not have duplicate cases

go/types is more stringent than gc, disallowing duplicate cases
in switch statements. Seems fair (gc should probably change in
this case), so I've updated the test case.
llgo: Fix method expressions
llgo: Make size of int dependent on target architecture
llgo: Implement interface-to-value comparisons
llgo: Fix inc/dec for non-integer types

Fixes required in go/types to get TestOperators to pass,
to set additional type hints.
llgo: Fix variadic functions

gri fixed go/types. It's a little weird, but it works.
The function's Signature has the variadic parameter's type as
the element T, while the parameter object's type is []T.
cmd/llgo: Add missing unit test file
llgo: More fixes to get llgo-dist to succeed