etcd client that uses a tagged struct to save and restore values