IF you need to isolate some of your code like you do for drilling the holes then consider using block delete. That way if you don't require it turn on block delete and mach will bypass that code.
As to the USB (;-) it depends on the computer. I have one that runs the code from the usb STICK everyday without problems. MACH is memory mapped . that means it loads the entire Gcode program into SYS memory so it NEVER has to reread anything from the drive. SO it should not matter to mach where it came from originally.
Just a thought, (;-) TP