use gotools package instead of own match.go
if there's any parsing failure for a package try the next package instantly
be more explicit about "no go files" error

no go files includes files that require the use of cgo
update for new go/types API
more upstream API changes
Fix compilation error due to changes in types.go
upstream API changes
do not parse sources twice

the importer already parses sources if it needs to
Move "empty interface" check into outer loop to improve performance.
support gc fallback for cgo imports