pub type DeviceId = Id<Device>;
struct DeviceId(RawId, PhantomData<Device>);
0: RawId
1: PhantomData<Device>