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.

fixes #2214
I think it's a matter of preference. The current form is actually easier for me to wrap my head around, probably because that's how I was trained to look at complex conditionals in CS classes in college years ago. Stuck with me, I guess.



> Are we sure that these are the only error codes that we need to catch?

I believe so. The only cases where we want to continue are on a successful key set or an error due to the key already being set. Any other etcd connection error should bubble up.