dbus: return non-zero return value in the case that prefix won't match

strv_extend returns 0 in the case of success which means that
else if (bus_track_deserialize_item(&m->deserialized_subscribed, l) == 0)
        log_warning("Unknown serialization item '%s'", l);
will be printed when value is added correctly.
manager: let manager_free() handle NULLs

This makes the calling code a bit simpler.
manager: only issue overmount warning when the check succeeded

If for any reason the check failed (selinux?), we would still issue
the warning. Check the return status.