It seems like we some-where rely on `array.ctypes` internally. We should try and abstract that to inside the nplike / kernels.