added cucumber tests for race
fixed merge conflicts. we need to talk about imperative vs declarative tests.