ERROR_WAIT_TIME should be a config option

As discussed at https://review.openstack.org/#/c/112941/
replace the hard-coded timeout value with a config option.

Change-Id: I49ddf254dfe6460626d90cc75f89e798227dfff6
Closes-Bug: #1385014
Remove die_if_not_set check for var user_roles

Since the later logic will add role if the user role is not
found. "die_if_not_set" check will exit the main script.

Closes-Bug: #1389714

Change-Id: I995cf357d09267fee55e44575e3e301bcffebca3
Add validation constraints on config inputs

This change adds a new property to the StructuredDeployment class to
enable a check on the config inputs. When this property is set to
'STRICT' we compare the inputs to the supplied input_values property and
we raise an exception if the input_values result in any inputs not being
assigned a value.
By default this is disabled.
I did a small refactor of the code adding a couple of extra methods.
Closes-bug: 1334283

Change-Id: If132163bcaf4eee61a9499808ab264e7b7f80cb2
Use RPC directly for software deployment operations

This change replaces heatclient REST calls with RPC calls when
creating, fetching or deleting software deployments.

Change-Id: If81b68717bd2f9d9be1291c07b18626493c9b5cc
Partial-blueprint: software-config-trigger
Merge "Add validation constraints on config inputs"
Merge "ERROR_WAIT_TIME should be a config option"
Merge "Use RPC directly for software deployment operations"
Merge "Remove die_if_not_set check for var user_roles"