netdir: Conditionally expose APIs for working with unusable relays; document what "usable" means.
This MR is based on top of !1310 (merged); only the last 3 commits here are new. Please don't merge this until !1310 (merged) is merged.
There are two main changes here based on a conversation with @juga about Margot's needs:
- NetDir now exposes two functions, gated on
experimental-api
, to find out whether a relay is present in the consensus. (Existing functions for this purpose can't tell you about the case where the relay is in the consensus but has no MD yet.) - We now do a better job of documenting what a "usable" relay is.
Edited by Nick Mathewson