fix(deisctl/units): remove extra commands in store-volume Start-Pre
fix(*): etcd_set_default and etcd_safe_mkdir raise some errors

Currently, both `etcd_set_default` and `etcd_safe_mkdir` in
the /bin/boot scripts never fail due to `|| true`. This is usually
desired because if the key already exists, we don't want to overwrite
it. However, if there is an underlying error connecting to etcd, we
swallow that as well.

This commit exploits the fact that `etcdctl` has different exit codes
for key errors and etcd errors to swallow only the errors we wish to.
Merge pull request #2302 from mboersma/fix-store-volume-cruft

fix(deisctl/units): remove extra commands in store-volume Start-Pre
Merge pull request #2308 from carmstrong/etcd_set_default-error_checking

fix(*): etcd_set_default and etcd_safe_mkdir raise some errors
docs(reference): add controller API documentation