Olá,
Eu fiquei um pouco encanado com o motivo pelo qual foi feito esse refactor no código. Ainda que o código do buscarTodos() estivesse plenamente legível, ele estava com uma responsabilidade extra que era a de filtrar o querystring e extrair o que era informação de ordenação e o que era de filtro. 
Então nesse caso, não seria melhor criar um método protected ou private na própria BaseController que fizesse isso? Com esse helper novo, é mais uma dependência para resolver na hora de estender a classe BaseController. Ficou uma sensação de "over engeneering". Estou errado? Ou há um motivo para essa abordagem?
Excelente curso até agora, estou gostando muito.
Abraços,Luis