Tweak error handling in flush_default_route.
Use timeval_compare instead of subtracting when expiring routes.
Use larger timeouts for routes, allow 2 updates to be lost.

We used to expire our default route as soon as an update was lost.
Maintain the selected interface.
Implement expiry of the selected neighbour.

We used to wait until the selected route expired even if the neighbour
through which it goes expires first.
Avoid spurious error message.