Universal in-system and parallel device programmers for microcontrollers, flash memory and PLD devices