added documentation to the interfaces introduced in #74
fixes #75: NullPointerException on watcher update.
As watchers are referenced with weak references then a check of not null value must be done before every actions.