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)