feat: add $watch for changes to '.data'

- When there is a ui-select2 attribute, the relevant model is not
   watched for changes, so refreshing possible selections is impossible
 - Add a $watch over the scope objects '.data' object, and reinit
   select2 with new options