NumTypes with TypeNats, Data Kinds, Closed Type Families...