What is the difference between Go's custom types and built-in types for data storage and manipulation in Go?