Implement support for sub-devices. SYCL has three create_sub_devices functions and we should support all three: - [x] DPCTLDevice_CreateSubDevicesEqually - [x] DPCTLDevice_CreateSubDevicesByCounts - [x] DPCTLDevice_CreateSubDevicesByAffinityDomain