Apply clarification from Craig McDonnell

The last argument to evaluate() methods
is the environment, not the advices.

Only return advices on failure,
and if the condition should return advices.