68 Range and Close

A sender can close a channel to indicate that no more values will be sent.
Receivers can test whether a channel has been closed by assigning
a second parameter to the receive expression: after

```
v, ok := <-ch
```

ok is false if there are no more values to receive and the channel is closed.
The loop for i := range c receives values from the channel repeatedly until it is closed.

Note: Only the sender should close a channel, never the receiver. Sending on a closed channel will cause a panic.

Another note: Channels aren't like files; you don't usually need to close them. Closing is only necessary when the receiver must be told there are no more values coming, such as to terminate a range loop.
69 Select

The select statement lets a goroutine wait on multiple communication operations.
A select blocks until one of its cases can run, then it executes that case.
It chooses one at random if multiple are ready.
70 Default Selection
72 Exercise: Equivalent Binary Trees