Normalize daemon process handling

Adopt some of the structure from nodepool to make daemon process
handling more consistent.  Handle some argument parsing centrally.

Change the default pid file structure to match nodepool:
  /var/run/zuul/<processname>

Attempt to use the pidfile before daemonizing so that errors are
immediately reported.

Drop the config validation test since it is almost useless at this
point.

Change-Id: I4a9d9473ce028e0b0cd32a8c48598c1682e1c329
7 files changed