Updated optional settings and configuration

Optional settings now return default(T) if not set or defaulted, rather
than throwing a configuration error. ConfigurationByParameters removed,
and replaced with direct access to modify Defaults and Required fields.