Adding angular.copy to fix bug where watch is not triggered