fix(client): use path.Join and parsing

Machines with a trailing slash are valid. Cleanup the code so that this
is handled properly.

Closes: https://github.com/coreos/go-etcd/issues/82
Merge pull request #84 from philips/cleanup-trailing-slash

fix(client): use path.Join and parsing
fix(client_test): add comment about the trailing slash
refactor(debug): use the Logger interface default is Go's log

Get rid of the go-log requirement and use the default logger with a
Discard sink.
fix(tests): make the tests pass on a non-clean cluster

The get_tests were expecting to match exact Indexes. This is just not
practical right now so clean the results up before testing them.
Merge pull request #86 from philips/fix-tests-on-non-clean-cluster

fix(tests): make the tests pass on a non-clean cluster
Merge pull request #85 from philips/remove-go-log-requirement

refactor(debug): use the Logger interface default is Go's log
feat(client): Add method Client.SetTransport

Allow a client of the go-etcd library to override an initialized
Client's HTTP Transport.
Merge pull request #87 from bcwaldon/custom-transporter

feat(client): Add NewClientFromTransporter
put godoc badge
Merge pull request #97 from cenkalti/patch-1

put godoc badge
feat(log): use a normal log.Logger

Instead of requiring some go-etcd types to be implemented use a normal
log.Logger.
Always close response channel when Watch is done.

Added a defer statement when the receiver channel passed to Watch is
set to close the channel. This permits the goroutine consuming that
channel to gracefully terminate when the channel will no longer return
any responses.
Merge pull request #98 from paddyforan/master

Always close response channel when Watch is done.