After spending several days pouring through threads struggling with flyback I finally found my issue and wanted to spell it out for what seems like a common problem. The issue is that the Sainsmart board will work fine with no load. All relays trip as frequently and as rapidly as would be expected. Attaching solenoids would work for infrequent pulses however quick pulses in succession would lock the board. Unplugging it from USB and reattaching would reset the board it would again work for a few pulses. What I tried based on threads in this forum:
1) Three different solenoids, two different sizes. Some tractor starters, some tiny .8N push solenoids.
2) Various placement of 1N4004 diodes: on the solenoid terminals, a few inches away from the terminals, near the board. Tried two diodes, one on terminals and one a few inches away.
3) Transferring power from the ATX PSU to a dedicated 12v 360w PSU
4) Improved wire - up to 16 gauge
5) Solenoid placement - moving away from the board itself and from USB cabling
At the end of the day my problem appeared to be with #3. I moved both board power and solenoid power over to the dedicated PSU. The power fluctuations on either PSU is what appears to be knocking out the and moving board power back to the ATX PSU while leaving solenoid power on the dedicated PSU appears to have solved the problem.
I've only been through a few games but I definitely would have had a number of lock-ups in the old configuration in this time.