Properly handle GOPATH containing multiple paths

Try all dirs in GOPATH, and then fall back to current directory