Blunt-Edged, Brute-Force approach.  Lock all the things!
The idea is lock everything to get it to work, and remove locks that don't need to be there when it's proven that they don't.  I haven't been able to get the race condition errors to occur in as many test runs as I could sanely do.  I stopped short of doing statistical loops.  I'd like to get this built and pushed to dev or qa for some heavy stress testing tomorrow.