unconfigured clients look in the [clients] section for defaults

This change enables clients that have no specific settings in
the [clients_xxx] sections of the configuration file to get defaults
from the [clients] section.

Change-Id: I071bd77a2e1f0ad366b80c095917a8debc5cef2b
Closes-Bug: 1379958
(cherry picked from commit 4fd5087499b0f3dae16b183eba825e642efb0e95)
ResourceGroup don't special-case zero count

Currently, when you specify an initial count of zero, we don't
create the nested stack.  Unfortunately this then means you can
never update it, which makes the group forever broken..

Instead, always create the stack on create, even if it's an empty
stack containing zero resources.  This allows subsequent updates
which move to a non-zero count to work as expected.

Change-Id: I494229fcf85a1c28428fa2925c060fc1f40f4f36
Closes-Bug: #1392796
(cherry picked from commit d73107bd35cadcad0b4933aec43ef0313b961a45)
Make ResourceGroup updates update nested stacks

When you update a ResourceGroup which contains a provider resource
any update only happens when the properties input to the provider
change.  Instead, always trigger an update, so we can respond to
changes to the provider template definitions which may occur.

For AutoScalingGroup, we may want something more sophisticated,
where instead of unconditionally recurising on update, the option
to instead use rolling updates to do batched replacemnt of nested
stacks is offered.  But for ResourceGroup (which is a simple
container resource), this behavior seems most appropriate.

Conflicts:
	heat/engine/resources/resource_group.py
	heat/tests/test_resource_group.py

Change-Id: I6e0e50c821a27a0a9fb16dbf186558da3632935d
Closes-Bug: #1389499
(cherry picked from commit ea7f0144215763b62d35f3ec9bc22bba69256e69)
Merge "unconfigured clients look in the [clients] section for defaults" into stable/juno