The fix for the config_change helpers short cut on config restore
in c5a3f832d0 introduced a
regression for consumers that use the helper to set but not
restore config.
Re-introduce the shortcut when the caller passes in equal settings
for default and alternate configuration.
Fixes#427
Due to python-libjuju's requirement for coercing every config
value into strings, some configuration type/values are not
possible to specify the default for.
Allow the config_change helper to optionally use reset back to
charm default instead of specifying default config values in a
dictionary.
When configuring the address to use to talk to Keystone,
the format_addr helper should be used to ensure that an
IPv4 or IPv6 address can be correctly handled.