conman:  Remove temporary connection_check routes.

Since go/fibercl/77221 (commit aac161f), we always have routes when the
link is up.  So we do not need to add and remove temporary metric 99
routes. Instead, add routes when doing a connection check, if they don't
already exist.

Also, make sure to delete routes when appropriate:

* If subnet or gateway are set to None, delete the corresponding route.
* Don't leave dangling default routes with no corresponding subnet
  route.

Finally, slightly refactor _really_ip_route for the sake of a small
testability improvement.

Change-Id: I3b1c7db90cd017cfd3bfaa5ae8750f50fff544eb
2 files changed