prop224: Don't build HS desc if we don't have a live consensus
We currently block descriptor uploading until we have a live consensus, but we actually happily build the descriptor before that.
That can cause various synch issues. One example is that if we build the descriptor without a live consensus, we will calculate a false timing period length because of get_voting_interval()
.
We should restrict any descriptor-related operations until we have a live consensus. After all, without a live consensus we can't upload the descriptor anyway, so no point in building before that.