client: return timeout error for gateway timeout

So discovery could trigger its retry logic for gateway timeout too. [no longer true]
so user could know explicitly what happens:
```
yichengq@1 ~/s/g/c/etcd> time bin/etcd -name foo -advertise-peer-urls=http://127.0.0.1:10101 -discovery $(curl -s https://discovery.etcd.io/new)
2014/10/13 11:42:38 main: no data-dir provided, using default data-dir ./623679009225009941_etcd_data
2014/10/13 11:43:38 etcd: client: gateway timeout
```
@jonboulle i changed it to a new error, and update the purpose at the first comment of this PR. do you think it is still meaningful?