Unless otherwise specified this pass should not assume a level, as this
rejects otherwise valid TOSA. This has caused build failures in IREE.
The level (and other validation options) have now been made configurable.
The pass options have been converted to enums to make them more type
safe in C++.