fix(server/v1): don't fail put on new v1 key

We weren't checking for PrevNode being nil in the v1 code path. Do this
and add a test.

Fixes #557
Merge pull request #558 from philips/v1-put-crash-fix

fix(server/v1): don't fail put on new v1 key
fix(Documentation): single machine clusters have some stats undefined

document that single machine clusters will omit sendBandwidthRate and
sendPkgRate.

Via http://thread.gmane.org/gmane.comp.distributed.etcd/218
add(server/v1/tests): Port many of the v2 HTTP handler tests to v1

This should cover most aspects of the v1 API but being new to the etcd
code base I cannot promise that or that the tests are even correct.
They do pass though :)
Merge pull request #560 from marineam/test-v1

add(server/v1/tests): Port many of the v2 HTTP handler tests to v1
fix(server/tls_info): use all certificates in CA file

fixes coreos/etcd#553
Merge pull request #554 from mfischer-zd/tls_fixes

fix(server/tls_info): use all certificates in CA file
Merge pull request #559 from philips/document-missing-stats

fix(Documentation): single machine clusters have some stats undefined
bump(github.com/coreos/raft): cff0a00
Merge pull request #563 from benbjohnson/raft

bump(github.com/coreos/raft): cff0a00
chore(server): add +git to the version

we need to automate this but make sure versions built from git have
+git after the version number.
fix(etcd): get consistent with etcdctl on printing versions

Lets get a bit more consistent in printing the versions:

```
$ ./bin/etcd -version
etcd version 0.3.0+git
$ ./bin/etcdctl -v
etcdctl version 0.3.0+git
```
Merge pull request #565 from philips/cleanup-version

fix(etcd): get consistent with etcdctl on printing versions
chore(test): remove useless node1.etcd dir

It is a directory checked in from an etcd test run in mistake.
Merge pull request #566 from unihorn/3

chore(test): remove useless node1.etcd dir
fix(Documentation/tuning): fix incorrect comment about snapshot
Add helper function to create 1 node cluster