Move deletion from dependency graph to __delitem__
Move deletion from dependency graph to __delitem__

Graph objects are mutable, and will in future be used for operations other
than a topological sort, so abstract out the code for deleting backlinks to
a node from the other nodes that have dependencies on it when it is
removed.

Change-Id: I86b81303ed2dffd969a2db10535761f108f4808a

maestro-hybrid-cloud/heat,rdo-management/heat,JioCloud/heat,dims/heat,citrix-openstack-build/heat,ntt-sic/heat,openstack/heat,varunarya10/heat,dims/heat,miguelgrinberg/heat,noironetworks/heat,miguelgrinberg/heat,varunarya10/heat,cryptickp/heat,srznew/heat,pratikmallya/heat,noironetworks/heat,ntt-sic/heat,citrix-openstack-build/heat,dragorosson/heat,dragorosson/heat,rickerc/heat_audit,cryptickp/heat,steveb/heat,takeshineshiro/heat,rh-s/heat,rickerc/heat_audit,maestro-hybrid-cloud/heat,takeshineshiro/heat,jasondunsmore/heat,redhat-openstack/heat,srznew/heat,NeCTAR-RC/heat,pratikmallya/heat,gonzolino/heat,NeCTAR-RC/heat,cwolferh/heat-scratch,jasondunsmore/heat,JioCloud/heat,pshchelo/heat,gonzolino/heat,steveb/heat,pshchelo/heat,cwolferh/heat-scratch,rh-s/heat,openstack/heat,rdo-management/heat,redhat-openstack/heat