support loading environment variables into conf

Refactored so that ReadFromFile and ReadFromEnv are the simple, one-method
initialisers, but you can initialise a Config yourself and call AddFromFile
or AddFromEnvironment as required to build up the config hierarchy. Both
files and environment settings can be loaded into specific parts of the
config namespace.
update doc