Lock tables and provide fallback method if locking fails to keep integrity of RoundResult

Should fix GH-1 to semi-acceptable level.
Merge branch 'scoring_fix'