Issue #23: Enhanced encapsulation of watchman - only mainmodel may interact with watchman.