What is the difference between Go's structs and classes for defining and using structured types and objects in Go programs?