By default yaql 1.0 will not assume dicts to be iterable.
However because of yaql 0.2 had such behavior and some
users may still want to have it (for example because Python
has it) now in can be turned on. This is done by default
for legacy engine but not for modern one.
Also because SmartType's check method had no access
to engine options additional parameter (engine) was added.
Because previously signature was changed to have *args/**kwargs
backward compatibility retained