Enable the use of parameters in scopes

By passing in the controller it self to the scopes when we evaluate them, we can do stuff like checking controller parameters to check what we should filter with the scope.
Yep it would. If we want to stay compatible, we should aim for not executing the block twice. That makes little sense to me.