Replace DefinitionNewType mechanism with TypeInfo, so that Sugar doesn't have expressions in it that are not displayed and cause name conflicts unnecessarily. Also new logic for the types' display