you could use a mouse macro recoder to step through changing hex files and programming, there are other ways to, just depends on how much "setup" you need to do so that it gets streamlined to save time later. the fastest way to do things, if your really doing bulk, is get your program working and have microchip program the chips before they get to you. then you just have to insert and go. your going to be useing time swapping jumpers either on board or between boards, and clicking on buttons on pc to program stuff. yes you can have 3 programmers to save time from having to swap hex files but how much time are you actually going to save if you still have to stop and plug stuff in and out.

If your doing enough boards, perhaps you might want to have it setup to program say 8 boards with a chip to select each board. say a bank of programmer cords but have the chip select which one gets the power while programming, once done select new board and do it again, at the end of 8, select new chip and go through those 8, you would need to manually change the hex file after each 8, or use usb and write your own programmer software to send the hex files to the chips where it could change them for you.

Personally, it seems to me the simplest way would to be just program 1 chip over and over for however many you need then start with the next. doing one at a time or using a bank programmer (if you have money for that) or getting microchip to program them for you, would be the best and fastest solution right now.

A note on programming SMD chips, if you like to plug in a chip and program, then use on a board, I suggest using a SMD burn in module to program with, its what I use. See links below. Their awesome for programming SMD's.

3M TexTool SOIC (What I Use)

or something like this on ebay

that second one you can get with different pin configurations as well.