wrote comments into fetch.go, to describe what each function does.