USB interfaces operate as either 'devices' or 'hosts'. These are USB standard definitions. In Linux, for a USB interface to behave as a device (as opposed to the normal 'host' mode), the kernel must implement the USB-Gadget driver. This, then, precludes the use of any USB host interface. Further, there must be some application &/or driver that implements the functionality of the USB device.
I don't know of any existing code that makes a PC look like a giant USB thumb drive, although I've seen requests like yours before.