added the ability to attach an arbitrary object to OperationResult