Make self dependencies do something useful
Basically right now having a Campaign depend on itself would run the campaign
with its own output as input, which is generally not useful; instead we should
special case that to make it run the next batch as soon as this one finishes, which
is something someone might actually want to do.