Clean up DAGScheduler datastructures after job completes

I added some fixes to reduce heap/prevent memory leak we found after running a load test (thousands of jobs).  There may be more leaks, but this fixes a big one.