Updating to z-schema 3.0.0

1. Adapts to new synchronous model for compilation and validation.
1. Using new api for `validator.getLastErrors()` instead of  `validator.getLastError().errors`.
1. All schemas are validated the first time, not just compiled.

Instead of doing the last one we could avoid that and just use the new `__validated` and `__compiled` flags from z-schema. That would mean removing the test for failure `'should return an error if unable to compile routes'`.