[daemon.cc] Quell clang warning.
[foreach.h] Use new c++11 ranged for when we can.
[daemon-manager.cc] fork() is in unistd.
[passwd.h] uid_t needs <sys/types.h>.
[daemon.cc] pipe() needs <unistd.h>.
Use FD_CLOEXEC instead of 1.

Seriously, what was I thinking?
[daemon.cc] Fix potential non-terminated string (on long error messages).

Since the error messages contain filenames this could be exploited by local users.
[daemon.cc] Let the daemon be stopped when it's cooling down.
Work around bug in clang.

Apparently if std::map<>::size() only appears in array declarations ("int x[mymap.size()]") then
clang doesn't instantiate the specific version of the size() function and we get a link error.
[daemon.cc] Clang doesn't like naked strings in a plain, uninitialized array.

Is that a gcc extension? Or just my blind luck that it worked?
[daemon.cc] Check for errors better than initgroups() does.
[passwd.cc] Stop shadowing this.name with our parameter.

This fixes the problem where daemon's groups don't get set up right.
Prepping version 0.97
Merging in 0.97.
Prepping Debian version 0.97
[daemon] Split the fork, setuid and exec stuff out from start() into its own function.
[daemon.conf.asciidoc] Adjust example to match documentation's recommendation of 'exec'.
[bug-new] Remove sockfile
[bug-new] Add env variables to conf files
[bug-new] Let user override SHELL env var to set which shell gets invoked.