WIP: revised assignment and campaign roles.
Feature: refactored models to seperate out campaign.