title: Joi validation: or() and xor() condition depending upon field value
body: <p>I have a schema that looks like this:</p>
  <pre><code>{
     a: joi.boolean(),
     b: joi.object(),
     c: joi.object()
  }
  </code></pre>
  <p>Depending upon the value of field a = false, I want fields b or c to exist. If a is false, I want a xor condition on fields b and c.</p>
  <p>I tried using when but I'm unable to find a perfect solution.</p>