Make go-etcd workable with server timing out.

We can return ErrTimeout but it won't be completely truthful. We know that we successfully got 200 but not the entire body. It might have or might not have been due to a timeout. By returning ErrTimeout, we also don't return the information that we did receive in the header (e.g. X-RaftIndex). Now, returning empty body is also not all that truthful since we might have gotten some of it (and then discarded) but it might be the lesser of the two evils.