Added SceneProcedural::allRenderedSignal()

This static signal gets emitted every time the number of SceneProcedural instances that haven't been rendered yet falls to zero.
Clearing some caches after procedural expansion has finished

I'm doing this by connecting to SceneProcedural::allRenderedSignal in the GafferScene::ScriptProcedural
added Context::remove() method
used different form of erase() in Context::remove()
Added Context.__delitem__ python binding
made ScriptProcedural.allRendered private
Merge pull request #1014 from davidsminor/contextRemove

Added Context::remove() method
Merge pull request #1012 from davidsminor/postRenderSignal

Post render signal