remove subject/san_names from Spki. You must pass those values to

R509::CertificateAuthority::Signer...or at least you will have to once I
implement that
might help if the asn1 object was actually in the repo
enormous changeset (sorry, got carried away)

refactor R509::Csr's attribute parsing
refactor a method from Csr to ASN1
rename GeneralNameHash to GeneralNames
refactor GeneralNames to add some new methods and rename existing
modify R509::CertificateAuthority::Signer to handle changed Csr and Spki objects
and take a GeneralNames object for san names (this allows the
specification of explicit SAN types like rfc822Name, dNSName, etc)
big changes to R509::Csr and R509::Cert to support new SAN behaviors
R509::Csr, R509::Cert, and R509::Spki now return a symbol on #key_algorithm
Implemented EC support in R509::Spki (how did I miss that)