tether: tethering chooses wrong upstream when mobile_dun is required

When mobile_dun is required, the default mobile type will
be deleted from upstream list, this makes wifi become
the highest priority upstream even whne wifi is not available.

CRs-fixed: 671675

Conflicts:

	services/java/com/android/server/connectivity/Tethering.java

Change-Id: I2c12f6cd6d52331220dce900609ad072f9ec3fbc
Merge "tether: tethering chooses wrong upstream when mobile_dun is required" into kk4.4