Refactor request classes