Add Close() function to client

Because (as far as I know) go-etcd is not thread/goroutine safe I have to create new client in each goroutine. 

The http.Transport uses KeepAlive by default, which causes problems if new clients are created faster than the http connections are closed.

This function stores the Transport object in the Client and calls CloseIdleConnections()
could we close var `c.httpClient.Transport`? it seems rather straight forward.