Hi Marvin,
Regarding:
#1 - KFLOP has (8) 8-bit 3.3V LVTTL PWM outputs that run at 60KHz or can be prescaled slower by a factor of N (1 to 256). KFLOP does not support PWM mode directly. You need a few lines of C code to take the servo output and write to the PWM. This allows all types of PWMs (anti-phase, sign/magnitude, etc...). You might install our software, goto the C Program Screen, and load the PWM1KHz.c and OutputtoPWM3Axis.c examples to see how difficult that would be for you.
#2 - The best method is to have the spindle always operate as a servo. This makes rigid tapping easy and when using it as a "spindle" the axis is simply commanded to "Jog" at a constant speed. This has the benefit of speed feedback and controlled acceleration as well. I think Automation Direct sells reasonably priced VFDs.
#3 - I'm not sure about this, but it should be independent of our controller. If Mach3 handles the offsets suitable for you normally it shouldn't be any different with KFLOP controlling the axes.
#4 - I'm not sure exactly what you are referring to but when using KFLOP there is no Mach3 Parallel port Kernel driver which is what would normally do IO to parallel ports. So you wouldn't be able to use parallel ports. You can still control IO bits from CB Macros and such that reside on KFLOP. Or for example ModBus IO bits.
HTH