Onion service descriptor parsing and decoding, first cut.
This branch has code that successfully parses and decrypts all the layers of an example onion service descriptor. It's part of #744 (closed).
(It's not all of it, since there are things remaining to clean up; see the "TODO HS" notes here and there.)