Start on reworking type specification declarations/definitions