Making Canonical Workflow Building Blocks Interoperable across Workflow Languages