test>model/new+bug: tests and fixes for model shadow handling.
model/new: handle shadow references correctly.
list>uniq/new: implement UniqList.
model>reference/bug: Reference#map() isn't typed as expected.
model/new+test: implement #watchModified().
list/new: implement #watchModified().
model/bug: prevent infinite loops in modified(deep).
model>reference/bug: correctly init reference on #map().
list/bug: clean up #watchModified() on List.
Merge remote-tracking branch 'origin/master' into with-extract

Conflicts:
	src/model/model.coffee