GCS Controller: add periodic timer to send GCSReceiver

This is a quick solution to problem 508 where the GCS Controller does
not successfully set GCSReceiver frequently enough to remove a failsafe.
When using GCSReceiver mode when you move the stick to a valid position
it will stay connected.
GCS Controller: only transmit updates when enabled

When the GCS Control checkbox is enabled then GCSReceiver outputs
will start occuring periodically.  With this patch control works
but still ManualControlCommand is set to read only which blocks
it.

Work on #508.
GCS Control: move changing ManualControlCommand meta to the gadget

The original architecture is first of all problematic.  Way too much
logic is in the widget (UI) instead of the gadget (controller).  This
was a problem for enabling GCSReceiver control since it was clobbering
ManualControlCommand meta to read only which blocked the FC from reading
the "Connected" flag.

Fixes #508
Merge pull request #533 from peabody124/hitl_fix

GCS Controller / HITL fix