a8n: Return an error in CreateCampaign if it would create 0 changesets
Created by: mrnugget
This is something I discussed with @eseliger: we don't want to create a Campaign if the specified CampaignPlan didn't yield any diffs. It doesn't make a whole lot of sense to have this (non-manual) Campaign without changesets in the first place and introducing this invariant also makes it easier for us to reason about the code.