By annotating types with the constructor application that was used to create them. Later on we can use the router to replace compiler's INSTANCES or for user defined types.
First to be more in line with how the literature treats these types. But also to make them workable with type classes.