The file consists of modules and parameters. A module begins with
       the name of the module in square brackets and continues until the
       next module begins.  Modules contain parameters of the form
       name = value.
       The file is line-based -- that is, each newline-terminated line
       represents either a comment, a module name or a parameter.
       Only the first equals sign in a parameter is significant.
       Whitespace before or after the first equals sign is discarded.
       Leading, trailing and internal whitespace in module and parameter
       names is irrelevant. Leading and trailing whitespace in a
       parameter value is discarded. Internal whitespace within a
       parameter value is retained verbatim.
       Any line beginning with a hash (#) is ignored, as are lines
       containing only whitespace. (If a hash occurs after anything
       other than leading whitespace, it is considered a part of the
       line's content.)
       Any line ending in a \ is "continued" on the next line in the
       customary UNIX fashion.
       The values following the equals sign in parameters are all either
       a string (no quotes needed) or a boolean, which may be given as
       yes/no, 0/1 or true/false.  Case is not significant in boolean
       values, but is preserved in string values.