I have been looking at this thread for a bit and want to interject an idea.
A couple years ago, I offered a patch to the GUC system that added a
number of abilities, two left out were:
(1) Specify a configuration file on the command line.
(2) Allow the inclusion of a configuration file from within the
configuration file.
If the include functionality were re-instated, then a default file,
something like, $DATADIR/defaults.conf could be included by default on
start up. This file could be written by the program.
It offers the benefit of being readable and editable, requiring very
little extra work to implement, and working in a consistent way with
existing functionality.
P.S. I'd like the ability to load a config file with a command line option
as well. :-)