no need to close over type constraints; can close over compiled checks instead
find_type_for implementation
override validate_explain a couple of places
override validate_explain in Type::Tiny::Duck