This (huge) commit introduces an epic_usb_ API along with the underlying private usb/ module in epicardium
The functionality is split between core/device/config:
epc_usb, the core, is independent of the actual device being (de)initialized. It services MAXUSB's API for enumeration as well as USB event handling
cdcacm, mass_storage in usb/ provide device-specific callbacks for use by ebc_usb
modules/usb binds fatfs, flash and cdcacm to these callbacks and defines the actual USB descriptors to be used.