Support writing needed extension types

Well I'll be horn-swaggled and dipped in turds.