Quote paths from example & default attributes.
Export options.json & options.xml for building tools for NixOS.
Annotate option-set options with the file in which they are declared.

This modification improves NixOS manual by listing in which file, each
submodule option is declared.  This solve the issue that files are not
reported when looking at options such as fileSystems.<name?>.neededForBoot
Merge options having the submodule type.

Now we should be able to have multiple declaration of the same option as
long as all declarations have the same type.  If the type has a sub module,
then it is merged with the submodules of other declarations, as done with
option sets.

In addition, the file of the option declaration is passed into the
submodule, such as the documentation can display it correctly.
Merge pull request #3811 from nbp/options-json

Export the list of options to XML & JSON, such that external tools can use it.
Merge pull request #3856 from nbp/submodule-declarations

Annotate option-set options with the file in which they are declared.
Replace environment.profileVariables by environment.profileRelativeEnvVars
Remove types.functionTo.