I don't like this change. I think EncodeRing should return a Ring like it did before. Then what you've made to be the new ring should be RingHeader or something.