ngSelectedOption $optDisabled rewritten to be precalculated as others

That will allow us to use old value in calculation of new value. E.g. `select-disabled="!$optDisabled"`.

+ We shouldn't watch for expression changes that wasn't defined at all.
 + ExprLocals should not recalculate their names on each call. Names will be calculated once per ngSelectOption at the most.
+ Don't store helper functions like `map`, `addClass`, `removeClass` in frequently called functions. (Ideally it can be moved to separate helper service)