teamd: tipc: fix team port removal bugs

Fix a bug where memory allocated for the 'links' list was not freed
when a team port was removed, and an issue where per-port callback
was not deleted when a team port is removed.

Signed-off-by: Erik Hugne <erik.hugne@ericsson.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
teamd: tipc: topology-aware failover

We introduce a more fine-grained approach to team port failover
for the TIPC link watcher. Instead of waiting until the last link
over a bearer goes down to trigger team port down, we do this
immediately when the last link to a logical cluster is lost.
This leverages the ability to group nodes into clusters with
the <zone>.<cluster>.<node> addressing scheme in TIPC.

Signed-off-by: Erik Hugne <erik.hugne@ericsson.com>
Signed-off-by: Jiri Pirko <jiri@resnulli.us>