Fixes NullPointerException in AbstractRequirementController.setRequirements() and reverts some buggy changes in request threads

I realized that some changes I made to the request threads were not just refactoring, but changed the functionality in a way that was inefficient and unnecessary.