Fix for watch node going blank after CBN change: MAGN-4437

@ikeough

## The problem
When a CBN updates after the code has changed, old ports and connectors are deleted and new ones are created to replace it. The Watch node has a handler in place that blanks the node when it's input port is disconnected. For some reason, this does not trigger a re-evaluation, even when `RequiresRecalc = true;` is set in the port disconnect handler on the Watch node.

## The solution
The Watch node no longer clears its contents when it's input port is disconnected. Instead, the Watch node remembers the AST Identifier that is being used as it's input, and when it's input port is re-connected, it compares the new identifier with the old identifier, and clears the contents when they do not match.