Engineering a BPEL Orchestration Engine as a Multi-agent System