Encode the VRT prototype leading arguments, they're about to become
more complicated.
Pass the designated workspace to the VCL methods.
Remove the req argument from the VCL foo-to-string conversion functions,
all they need is a workspace.  Some of them don't even need that.
Remove more 'req' arguments from VRT