Locking around build_requested for race condition (AUE-382)

Lock around build requested to avoid a scenario where builds that are requested are not made.

Would especially like input from @nnutter and @tmooney
If the intent is to not have test runs interfere with normal operations, perhaps we should not set `build_requested` at all if `GENOME_SOFTWARE_RESULT_TEST_NAME` is set.