do not create state/run dirs if not actually starting

(This fixes it in gdnsd+libgdnsd code, but rundir still
gets created via libdmn's dmn_init3() during checkconf action,
which needs to be addressed separately)
Avoid .mtime_test writes and avoidable delays in checkconf
do not fail if config dir does not exist
add post_privdrop plugin hook
Move extmon child spawn to post_privdrop and simplify

(Now that chroot() isn't a factor)
remove unused dmn_get_username()
libdmn username logic cleanup
move pid_dir check/create down from dmn_init3 to dmn_secure

This avoids doing any mkdir/chmod work during checkconf
(which invokes init3 for username check).  We don't actually
need the pidfile info until _acquire_pidfile, but we do need
to do this stuff before privdrop while we have root access.