netdoc: Reject BOMs and NULs.
Per https://spec.torproject.org/dir-spec/netdoc.html, our netdocs never have a BOM, and never have internal NULs. This MR makes Arti reject such documents.
For arguments on why it's okay to increase parser strictness, see the (forthcoming) proposal 356 at torspec!342 (merged), and see older discussion at torspec#296 (closed).
Closes #1739 (closed).
The reviewer should double-check that I got the BOM (which I think is FEFF) and its byte-swapped sibling (I think it's FFEF) correct: I am prone to move the E around when I am not super-careful.