Eliminate a number of calls to asZObject().
Bug: T426332
- allow orchestrate to accept WFBase objects as function call
- do not call asZObject in getEnvelopeFor_ (`orchestrate()` can now handle WFBase)
- add WFKeys method to all WFBase objects, allowing for createZObjectKey to work
- add tests to ensure that many schemata utils work with WFBase
- isZ(Reference|FunctionCall)
- findErrorTypeIdentity
- createZObjectKey