Better support for creating new block types