create campaigns, add specs, factory

@jkronz