Better startup error handling and configurability

Short circuit kubelet initialization if the root volume directory can't be
created, as volume mounts are non-functional in the absence of the directory.
Without this check, volume mounts (including Docker socket mounts for builds)
fail in non-obvious ways.

Make the etcd and volume directories configurable to better facilitate dev
and test environments. Retain the existing defaults for turnkey prod-like
operation.
This doesn't handle the case I mentioned, which as a non-root user I want to be able to run `openshift start` and have it work