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
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
Merge remote-tracking branch 'upstream/master'

* upstream/master:
  add(server/v1/tests): Port many of the v2 HTTP handler tests to v1
  fix(server/v1): don't fail put on new v1 key