What is the difference between Go's buffered and unbuffered channels?