Modem cleanup happens in two places: manager_free (ofono exit) and
manager_destroy (manually removing a specific modem). Both need
to unregister the entire set of registered interfaces.
manager_destroy function did not unregister all interfaces. Fixed
by adding a common function for both code paths.
The CallWaiting interface had one settable attribute after the latest
set of refactoring. Squash it onto the CallSettings interface where
it belonged in the first place