Fix downgrades in migration scripts 016 and 035

Downgrade behavior was not checked in Heat, so there are a few mistakes
in migration scripts. Fixed these scripts, set test attributes
`snake_walk` and `downgrade` to True due to allow migration testing and
avoid of regression.

Change-Id: I30cfb282cf7884d8b2748c6486a68d05072957af
Common stack_user_project_id across nested stacks

Currently the stack_user_project_id creation is deferred until
a resource actually needs to create a user in it. This means
for stacks with nested stacks there is a mixture of
stack_user_project_id values across the stacks (including None).

This causes issues when deployment resources are in one nested
stack and server resources are in another since deployments
are filtered by matching stack_user_project_id.

This change creates and assigns stack_user_project_id during
stack creation, and propagates this stack_user_project_id to
any nested stacks so that all stacks in the tree share a single
stack_user_project_id.

Closes-Bug: #1343163
Related-Blueprint: deployment-multiple-servers
Change-Id: Ia161ec9989fe0e0792967d9e1e20361e67f46fe1
Merge "Fix downgrades in migration scripts 016 and 035"
Merge "Common stack_user_project_id across nested stacks"