NB validation utils hk

Notable changes:
  * All `have` variants now trap errors.
  * Added `have?` macro.
  * Added `catch-errors`, `caught-error-data` macros.
  * `check` has been deprecated.
  * `check` is now compiled out with assertions (despite still throwing
    an ExInfo instead of AssertionError).
v1.12.0-SNAPSHOT