Allow listing of resources and nested resources

This allows the engine to optionally include resources from nested
stacks in a resource-list up to `depth` levels below.  This number is
limited by `max_nested_stack_depth`.

Implements: blueprint explode-nested-resources
Change-Id: I43a5af25e74c7bfb32260f1616d36b311e0f2631
Fix schema-to-template for empty schema

if schema is {}, the
schema_to_parameters_and_properties(schema)
function shouldn't get an error, and return
{}, {} for parameters and properties

Closes-Bug: #1341985

Change-Id: Ic206ba64811bf43080a9deebb7c3b4c19134c43d
Fix updating from an empty stack

Change-Id: Ic63e1998316b27a431e856fe43b9ad8cc9dd887a
Closes-bug: #1343171
Use six.add_metaclass instead of __metaclass__

According to http://docs.openstack.org/developer/hacking/ it should
be preferred to use six.add_metaclass instead of __metaclass__.

Change-Id: I1775035ea998b78a52c28ffe71dda2ede1377b31
clients make heat_url public

Make the heat_url helper function public, so it can be used inside resources
which require a heat endpoint URL, e.g to pass to an instance for signalling.

blueprint: native-waitcondition
Change-Id: If351066e9ad68d2e19dee955d5e9de87f527e17d
stack user add _user_token

Change-Id: I729a6e591e30a93378596eb35722120b4bb364fc
Don't resolve attributes before create

Change-Id: Idf0120b8c7fb46300462720136002bc7d7d68d31
Closes-Bug: #1332317
Merge "Allow listing of resources and nested resources"
Merge "clients make heat_url public"
Merge "stack user add _user_token"
Merge "Fix schema-to-template for empty schema"
Merge "Fix updating from an empty stack"
Merge "Use six.add_metaclass instead of __metaclass__"
Merge "Don't resolve attributes before create"