There is not really a quick and easy way to do this -
Just had a quick look at wintoflash - Can't say for XP, but for Vista and 7, you can setup the entire thing just by copying the entire dvd to your root of the usb stick.
I personally managed to install XP by copying the entire Vista dvd, then the whole Windows xp I386 folder (calling it xp_i386), on first setup screen, holding shift+F10 and going to the xp_i386 folder, then running Setup along with a few switches.
Anyway, I think what you want to be looking in to is basically partitioning your 8GB flashdrive in to one small (maybe 10 or less MB) partition and set to active, then the rest to however you want.
On the small one install GRUB as the bootloader, and point this to all the separate partitions. You should not have any extra problems over the normal of getting OS's to boot from USB, but GRUB on the first partition should allow you to select and choose between them all.
possible duplicate of How to create multiboot flash drive
– CAD bloke – 2014-08-07T04:14:02.693I recently learned that Windows does not support multiple partitions on USB flash devices. It is likely that you will not see anything beyond the first partition in the Windows boot (maybe you won't see that too). And, I don't know what happens if your Windows boot is not on the first partition. Cannot find references at the moment, maybe someone here has more details. – nik – 2009-09-01T05:43:16.793