Issue #26: Move watcher logic to an on-demand (at registration) method.
Issue #27: Create factory method for ASN types in the agent class.