fix(isDisabled): do not modify item
fix(isDisabled): do not modify item

Previously the item from the list was modified with the
_uiSelectChoiceDisabled property. This allowed a leakage of information
from ui-select to outside the directive. It also caused issues when the
was used outside of the directive.

This commit adds a reference array to store disabled items and so
prevents the need to modify the item in place.

Closes #1200 and #1661

Partially supersedes #1641

granteagon/ui-select-temp,prakashn27/ui-select,prakashn27/ui-select,Jefiozie/ui-select,Crunch-io/ui-select,piebe/ui-select,angular-ui/ui-select,MartinDeHaan/ui-select-submitform,looker/ui-select,oncompass/ui-select,WorktileTech/ui-select,oncompass/ui-select,angular-ui/ui-select,WorktileTech/ui-select,Jefiozie/ui-select,angular-ui/ui-select,ivanvoznyakovsky/ui-select,MartinDeHaan/ui-select-submitform,prakashn27/ui-select,Crunch-io/ui-select,WorktileTech/ui-select,looker/ui-select,granteagon/ui-select-temp,looker/ui-select,billypon/ui-select,Crunch-io/ui-select,Jobularity/ui-select,Servoy/ui-select,MartinDeHaan/ui-select-submitform,billypon/ui-select,granteagon/ui-select-temp,Jobularity/ui-select,ivanvoznyakovsky/ui-select,Servoy/ui-select,billypon/ui-select,piebe/ui-select,Servoy/ui-select,Jobularity/ui-select,oncompass/ui-select,Jefiozie/ui-select,piebe/ui-select,ivanvoznyakovsky/ui-select