Add container garbage collection.

Work in progress, will add unit tests this evening, assuming this looks ok.
If a pod has more than 5 containers, and all of them are restarted, some of them might end up without any dead container left behind for debugging? Is that what we want? Also restart count is specified for per-container, and this max is at pod base.