Require all config options to be defined.

Previously if we encountered an undefined config option we allowed it to be set.
This led to a number of options that are no longer used at all and options that
have been renamed, hanging around in config files. In some cases there were
config options referenced in code that were undefined.

Now:
- make the server raise if it encounters an undefined option during
  initialization.
- clean up the config we ship, and add defines for missing options
  (mostly build related)
- check to see if threads die in grr_server. Previously all threads could die
  but the init job would continue to run.
- set up a temporary logging to syslog to record problems with the config.
  Previously config init failures would not create any log messages because the
  logging system hadn't been initialized yet.

Added a section on config variables here:
https://github.com/google/grr-doc/blob/master/releasenotes.adoc
Yes, that's correct, only server code calls this so we should be good.  We don't expect people to be running the server on windows so I removed the OS check and added a comment to that effect.