Handle the case when we can't generate descriptors

Relays that fail to generate a server descriptor or extra-info descriptor also fail to generate a server descriptor. They just print out a warning and retry a couple of milliseconds later.

rransom wrote a patch in his mitigate2183 branch that at least generates a server descriptor in case we cannot generate an extra-info descriptor.

Sebastian mentioned that failing may also be an option if we can't generate an extra-info descriptor, or we'll never learn about this bug.

We should decide what the best behavior in this case is and write a patch.