Fix null values causing validateHash to fail

Take `validateHash({x:null, x:null})` as an example. As `null` has a
type of `object`, it would attempt to treat the null values as hashes
and recurse. Since `null` doesn't have any iterable fields, the validation
would then fail.

Fixed by adding a simple strict equality shortcut to prevent recursion
in this case.