broke getCampaign into own module, publishCampaign WIP needs socket io