Certificates can now be pickled.

Added reduce method for Abstract class, so pickle can figure out how to create instances of classes generated by implicit/explicit.
Shouldn't you assert that the unpickle is equal to the original?