Indeed my understanding is that it should not require crazy hardware requirements - it's a serial protocol clocked by the programmer.
Here's an Arduino project to program CPLDS/FPGAs using XSVF files
https://github.com/wschutzer/xsvfduino
I'd say that the cheap programming cables are abundant and already compatible with the vendor tools so there's not much motivation to reinvent the wheel.