title: jsonschema strip out unknown fields
body: <p>Is there any way to validate a json based on a schema and strip unknown keys from the json, using jsonschema?</p>
  
  <p>schema example:</p>
  
  <pre><code>{
    "type":"object",
    "$schema": "http://json-schema.org/draft-03/schema",
    "required":False,
    "properties":{
      "address": {
        "type":"object",
        "required":True,
        "properties":{
          "city": {
            "type":"string",
            "required":True
          }
      },
      "phoneNumber": {
        "type":"array",
        "required":False,
        "items":
        {
          "type":"object",
          "required":False,
          "properties":{
            "number": {
              "type":"string",
              "required":False
            }
          }
        }
      }
    }
  }
  </code></pre>
  
  <p>example data:</p>
  
  <pre><code>{
    "address":{
      "streetAddress": "1 Street",
      "city":"New York",
      "name": "Tom",
      "houseNumber":18
    },
    "phoneNumber":[
      {
        "type":"home",
        "number":"212 222 2222"
      }
    ]
  }
  </code></pre>
  
  <p>So the validator should pass on the data and returns the stripped version as follows:</p>
  
  <pre><code>{
    "address":{
      "city":"New York",
    },
    "phoneNumber":[
      {
        "number":"212 222 2222"
      }
    ]
  }
  </code></pre>
  
  <p>Cerberus does have "purge_unknown" feature, but it doesn't support JSON-Schema.</p>