[connman] Fix tethering and access to freed memory

Previous fix of accessing freed memory during tethering broke it;
reworked the code so that tethering_info wifi pointer gets cleared
if wifi device is removed during pending D-Bus method call, and
tethering callbacks check for pointer value.