Ignore json.SyntaxError when watching a key.

Either etcd or the etcd client will occasionally return malformed response
bodies, which end up causing json parse errors.  This causes the update and
error channels in storeadaptor to close.  Any loops that watch both the
update and error channels via a sleep will start running open-loop:

for {
  select {
  case update := <-updates:
    // once updates is closed, this will always return a default update
    // which has type CreateEvent, but nil Node and PrevNode entries.
  case err := <-errors:
    // handle errors
  }
}

Several possible workarounds:
* use "update, open := <-updates" to check if the channel is open
* exit the loop after receiving any error

However, both of those still kill the watch.  It's not desirable to have to
re-register and restart the watch if such an error occurs.

Thus, this CL detects the malformed response errors and ignores them.