TypeDescriptor is actually an UID represented as a id+bitset