Support writing needed extension types

Oh duh.. of course that would work. I'm really not doing well today. But should we litter up the code with all of those checks?