I seen the Vinculum used for USB host thumb drive reading. Also there's a separate chip that allows host operation. Someone here had a good blog on it, but I don't remember the name. Also, I know some of the ARM chips I'm using have limited host ability, but I haven't played with it at all. However you try it, it's complicated and difficult. It would be far simpler to replace the USB drive with a SD Card if you want to just be able to carry around a file system that can be read/written by a computer. SD Cards are not that difficult to read/write to by a microcontroller.