refactored code to not use view change listeners on the ngmodel controller anymore. they weren't working with watches or watchcollections. i assume what was happening is that when adding a watch it would be placed in the view change listeners array in a position before the image rendering and resizing listeners.
bumped version