Expose new NodeModel.RequestVisualUpdate method

This pull request exposes a new ```RequestVisualUpdate``` method from ```NodeModel``` class. It internally calls the ```protected virtual RequestVisualUpdateCore``` method that derived classes can choose to override. Currently ```Watch3D```, ```WatchImageCore``` and ```Watch``` classes override ```RequestVisualUpdateCore``` method to do nothing, signifying that nothing should be rendered for the node. This new method will be used by the upcoming ```UpdateRenderPackageAsyncTask``` class to determine if a given node requires an update to its associated render packages.

Hi @lukechurch, @ikeough this pull request is meant to reduce sizes of future pull requests, please take a look. Thanks!