That's all boilerplate single select / multi select behavior.  Typically you'd refactor all of that into a mixin with the use of a plugin like [Backbone.Chooser](https://github.com/brian-mann/Backbone.Chooser)