Allow filtering of stacks by action

Currently users can already filter by status.  Since status and action
are so closely tied, it is valuable to be able to filter by action as
well.  As a result, users can filter stacks in a more meaningful way.
For example, /stacks?action=CREATE&status=IN_PROGRESS

Implements: blueprint filter-by-action
Change-Id: I58bf53373e0a9231d198d8fb62e76b1373587b87
Do not use suppport message if it's None

'message' attribute of SupportStatus class has default value equal None.
If you use support_status value in Schema class without providing
'message', you will get in documentation warning in form: DEPRECATED - None.
It looks confused and in such case we should display only 'status'
attribute: DEPRECATED.

Change-Id: I482fe6a9ca134e9e3bc54282b4b10ed98c29b028
Push COMPLETE status change at the end of update

This patch moves the status change of stack update to the very end of
the update task, to avoid a race condition where the status of the stack
is UPDATE_COMPLETE but stack-show could return the previous resources.

Change-Id: I04abcf2e876d1de36a36bcd1596a2fd510669744
Closes-Bug: #1308682
Make template validation uniform

There were two different behaviours during template validation and creation
stack (with template validation). In first case error was raised if
template did not have any resources. However user could create stack
without error using this such kind of template.
This patch make behaviour equal for both variant and gives ability to
create and successfully validate stack with template which does not have
resources.

Change-Id: I4dc30ccdc45e0fa7ff678b434106e056dba5f3b4
Closes-Bug: #1278090
Merge "Do not use suppport message if it's None"
Merge "Allow filtering of stacks by action"
Merge "Make template validation uniform"