Fix verify to handle intrinsic functions
Allow comparison of dependency graphs for equality
Add a test for when the user renames a resource
Add a test for issuing a delete during an update with replacement
Mark the stack as complete when all resources are updated

Right now this is implemented to move to the complete status when all of
the resources requested by the user are in their updated state, even if
there are other resources remaining to be cleaned up. This may or may
not be what we want (it certainly differs from the current behaviour of
Heat), but should be easy to change depending on what we decide.

For efficiency we only wait on resources that are root nodes in the
stack (i.e. nothing depends on them). However, if we wanted to cache
output values in the Stack column of the DB then we could change it to
aggregate the input_data from every resource (or we could get really,
really clever and only pass the needed data from resources that supply
it).
Fix bug deleting physical resources that are not yet created
Give each datastore its own NotFound exception

Relying on KeyError made it difficult to distinguish between error
sources further up the stack.
Merge branch 'master' into distributed-graph
Implement rollback