adapt to new lines in votes and consensus and make the adaption to protocol changes easier
New protocol versions 23 and 25 introduce new lines for votes and consensus; e.g. vote from moria
...
recommended-relay-protocols Cons=1-2 Desc=1-2 DirCache=1 HSDir=1 HSIntro=3 HSRend=1 Link=4 LinkAuth=1 Microdesc=1-2 Relay=2
recommended-client-protocols Cons=1-2 Desc=1-2 DirCache=1 HSDir=1 HSIntro=3 HSRend=1 Link=4 LinkAuth=1 Microdesc=1-2 Relay=2
required-relay-protocols Cons=1 Desc=1 DirCache=1 HSDir=1 HSIntro=3 HSRend=1 Link=3-4 LinkAuth=1 Microdesc=1 Relay=1-2
required-client-protocols Cons=1-2 Desc=1-2 DirCache=1 HSDir=1 HSIntro=3 HSRend=1 Link=4 LinkAuth=1 Microdesc=1-2 Relay=2
...
shared-rand-participate
shared-rand-commit 1 sha3-256 D586D18309DED4CD6D57C18FDB97EFA96D330566 AAAAAFg3fwANZSmhaatp83nojq97N/eLHSCShOFJqiR1Skc9lO/dXA== AAAAAFg3fwDxNhND8l9+/S4fxn+yeCKNgaZp3yJ8qWSkg8NICmZ+PA==
These should not be treated as unknown lines by metrics-lib.
In addition, the process of recognizing lines should be improved to make accommodation of new protocol versions a lot easier, ideally without code changes, i.e. w/o having to compile metrics-lib for such changes.
(should be tackled together with #17861 (moved), #19640 (moved), #19607 (moved))