SITE-397: Updates in validation structure

==== Validator Upgrade ====

Updated node validator to the 3.x interface

==== Validation Updates ====

Errors no longer throw exceptions, they just return true/false

==== Error Object Updates ====

Previously error objects looked like:

```javascript
{
  "code": 400,
  "fields": {
    "field1": "message",
    "subdoc": {
      "nestedfield": "message"
    }
  }
}
```

Now it looks like:

```javascript
{
  "code": 400,
  "fields": {
    "field1": "message",
    "subdoc": {
      "error": "message",
      "childErrors": {
        "nestedfield": "message"
      }
    }
  }
}
```