hack: replace go-mod-prepare.sh with wrapper script
- follow-up to (and builds on) https://github.com/moby/moby/pull/44459

**- What I did**
To make the local build environment more correct and consistent, we should never leave an uncommitted go.mod in the tree; however, we need a go.mod for certain commands to work properly. Use a wrapper script to create and destroy the go.mod as needed instead of potentially changing tooling behavior by leaving it.

Also add a script to prevent go.mod from sneaking back in; as we are not a Go module, and cannot currently become one, we want to prevent new contributors from mistakenly trying to turn Moby into one.

**- How to verify it**
Manually, more or less.

**- A picture of a cute animal (not mandatory but encouraged)**
![image](https://user-images.githubusercontent.com/1049222/202741498-2fd212af-9387-4ccb-83a7-69a543254392.png)

hack/vendor.sh
#!/usr/bin/env bash
#
# This file is just a wrapper around the 'go mod vendor' tool.
# For updating dependencies you should change `vendor.mod` file in root of the
# project.

set -e

SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
"${SCRIPTDIR}"/go-mod-prepare.sh

export GO111MODULE=on

tidy() (
		set -x
		go mod tidy -modfile vendor.mod -compat 1.18
)

vendor() (
		set -x
		go mod vendor -modfile vendor.mod
)

help() {
	printf "%s:\n" "$(basename "$0")"
	echo "  - tidy: run go mod tidy"
	echo "  - vendor: run go mod vendor"
	echo "  - all: run tidy && vendor"
	echo "  - help: show this help"
}

case "$1" in
	tidy) tidy ;;
	vendor) vendor ;;
	""|all) tidy && vendor ;;
	*) help ;;
esac

#!/usr/bin/env bash
#
# This file is just a wrapper around the 'go mod vendor' tool.
# For updating dependencies you should change `vendor.mod` file in root of the
# project.

set -e

SCRIPTDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"

tidy() (
		set -x
		"${SCRIPTDIR}"/with-go-mod.sh go mod tidy -modfile vendor.mod -compat 1.18
)

vendor() (
		set -x
		"${SCRIPTDIR}"/with-go-mod.sh go mod vendor -modfile vendor.mod
)

help() {
	printf "%s:\n" "$(basename "$0")"
	echo "  - tidy: run go mod tidy"
	echo "  - vendor: run go mod vendor"
	echo "  - all: run tidy && vendor"
	echo "  - help: show this help"
}

case "$1" in
	tidy) tidy ;;
	vendor) vendor ;;
	""|all) tidy && vendor ;;
	*) help ;;
esac

Good point!