Document supported config file variables

This includes the newly added metadata_service_timeout and
metadata_service_num_attempts.  As part of this change,
I've added the ability for custom commands to provide their
description/synopsis/examples in rst files.  That way
the classes for commands do not have to include
the documentation text as part of the class definition.
Merge branch 'config-docs' into develop

* config-docs:
  Document supported config file variables