Support for Execution monad

Adding return type to context and making appropriate facts:
`verifiableOfInt.withFacts(returned ==> (_ > 10), myPath ==> missing)`

Alternatively, adding more `with` statements:
`verifiableOfInt.withOutputFacts(_ > 10, myPath ==> missing)`

Job or flow verifiable still works either way:
`verifiableOfUnit.withFacts(myPath ==> missing)`