Delete user_creds on stack delete

Make the user_creds_id nullable and delete the user_creds record associated
with a stack when we delete the stack.  Since stacks aren't really deleted
(only soft-deleted), this means the potentially sensitive credentials data
will be permanently deleted, while leaving the stack itself for audit
purposes (e.g listing events of a soft-deleted stack).

The changes made here would also make it easier in future if we wish to
validate the resources on create/update and only create the trust (or
store credentials) when a stack actually contains resources which require
deferred operations.

Change-Id: Ibd4ea3e549fce4de8de0e8da501e459c421bb11f
Closes-Bug: #1266523