In the splinter branch of this branch, I moved this stuff to identity.py, and made identity.Identity have a ConsumerIdentityAuth as it's auth attr, and the cert based impl of ConsumerIdentityAuth has a rhsm.certificate.IdentityCertificate. So identity.Identity.update() knows to call it's self.auth.update() and IdentityCertificate() knows how to persist itself, so managerlib.persist_consumer_cert goes away.

But the part that takes consumerinfo (the json blob from getConsumer()) and turns it into an IdentityCertificate() is still basically the same. Get's more annoying for the case where we want to see if the getConsumer() info is different than the current identity, since the compare atm is digging out the serial number from both and comparing.