Revisit option handling

Really fix #2166
The previous fix (46b53b3) was wrong since SOPE was able to override
the 'final' config with its defaults.

This now uses a new approach using a volatile domain and a reordering
of the search list :
  *   NSArgumentDomain (command line arguments)
  *   sogodRuntimeDomain (config from all config files)
  *   GSPrimaryDomain
  *   NSGlobalDomain
  *   GSConfigDomain
  *   (languages)
  *   NSRegistrationDomain (SOPE loads its defaults in this one)
Merge branch 'test/userdefaults'