Uplink goes abstract and GimbalViewport.Controller implements the protocol state notifiers