WIP: routing: detect when stuck with old HMAC keys
When network parameters are updated, their version is broadcasted throughout the whole graph of nodes starting from the node running the registry. This is of course not enough, at least because some nodes may be stopped at that time.
A second mechanism already exists for late nodes: when 2 nodes starts communicating between each other, they check their versions of the network parameters. But it supposes that routing works well enough between them.
Then comes HMAC, which can prevent 2 nodes from even handshaking and group of nodes may remain stuck out of the network: this is the issue that is addressed by this commit. 2 scenarios:
- no route to the registry node;
- there's a route to the registry node but not from it, which can only happen during the first phase of a HMAC change, i.e. when signing with the old key and accepting the new one: because a node can't detect this case by itself, a new 'valid_until' network parameter to tell nodes that something is likely wrong after this date.
On either condition, a node checks for new HMAC keys from time to time.
And also:
- a few py3-related fixes
- no more check for an old kernel bug