Basic campaign crud implementation