Add way to group exceptions in DependencyTaskGroup

DependencyTaskGroup currently aborts execution if any exceptions are
raised.  This commit provides a way of aggregating all the exceptions
during execution and re-raising them only at the end.

blueprint stack-check

Change-Id: I6af314cc112f9286c8b38739870c6fa8b4ba9b5a
Check resources are in expected states

This is the first step towards the blueprint stack-convergence.

Issue an update call with an additional flag (update_type=check) to
check that all resources are in their expected states.  If they are, the
call will complete with UPDATE_COMPLETE, otherwise resources will be
marked as UPDATE_FAILED with the corresponding reason.

Supported resources:
- Default implementation
- resources/instance

Implements: blueprint stack-check (partial)
Change-Id: I4e39bfe6a3dca04305563844d5922da7e0bb67b3