All PUTs now atomic

Don't commit yet, needs tests.

Add ResourceVersion to JSONBase, hook it up to etcd index to get atomic PUTs.

Move etcd helpers to tools package so they can depend on api package. Clarify in doc comments that util must not depend on api package, but tools may.
hrm, this seems overly verbose?  How is it any different than "return err"