Fix strange RTL behavior

This commits have fixed #1441 for me. Please review and cross test.

The behaviour should now be:

For COM_DL_LOSS_EN ==0:

- Mission finished, no RC, datalink ok: AUTO_RCRECOVER (RTL)
- Mission finished, no RC, datalink lost: AUTO_RCRECOVER (RTL)

For COM_DL_LOSS_EN == 1:

- Mission finished, no RC, datalink ok: AUTO_MISSION (loitering)
- Mission finished, no RC, datalink lost: AUTO_RCRECOVER (RTL)

I see it as a param for the whole mission, not just when the mission is finished. The case when the mission is finished is just a special case because we need to make sure that you can get it to ground in this state always. The user who enables data_link_loss_enabled is an advanced user who expects an action on a datalink loss.

Below the ones on which I disagree:

During the mission:
Datalink enabled:
  * Datalink lost, RC ok: RTGS, if the user does not want this he can disable the param
Datalink disabled:
  * Datalink lost, RC lost: MISSION if you fly out of RC range in auto it is ok from the autpilot point of view..., this will be the default case as most people fly without datalink_enabled. We could add a param like require_some_link_for_auto for additional safety

after the mission is finished:
Datalink enabled:
  * Datalink lost, RC ok: MISSION (loitering), because we have RC the user can land