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
mini rant: double negatives have always been difficult to review. `if ! ($? == 0 || $? == 4)` is a little more human-readable but is syntactically the same. :)

Are these the only error codes that we need to catch?