Fix a problem where if a minion went missing, we still thought the pod was running.

Also convert some tests to table driven.
Can we define an interface that contains only the methods you actually need?