Refactor EventsController

* EventsController specs were tightly coupled its implementation via mocks and stubs, so they needed to be changed to integration specs to facilitate refactoring
* DRYed up EventsController#duplicate and VenuesController#duplicate action by moving into shared SquashManyDuplicatesMixin
* DRYed up #create and #update by extracting #create_or_update
* Extracted Event::Saver out of #create_or_update