Watchers

code for #80