Generating IDs from typelist
Use typelist for isa implementation