3.0 conditional validation

Implements the ideas brought by https://github.com/cakephp/cakephp/issues/3757
Not sure what that would solve. Also validator is already a setter, so the second argument needs to be a validator.