overriding just ```isheader``` breaks things like ```getheader``` because all that does is a case insensitive lookup on a plain dictionary. ```getheader``` doesn't really do anything, the issue is with the ```self.dict``` attribute which is set in ```readheaders```... and at that point it's easy to throw away all of the junk we don't need.