Parse CertificateRequest messages

Haven't figured out how to treat lists with variable/unspecified lengths yet, and the branch has some TODOs that are important before we try and make this work. But it's a start.

(We don't *have* to merge this yet, I just want to put it out there)
It must be a bug in the TLS RFC that it doesn't specify a *minimum* for this length, but I'm *guessing* it may be a minimum of 1 instead of 0, in which case maybe this also deserves a "# TODO: Reject packets of length 0" marker...