code: function (nodeLikeObject) {
              var node = this;
              if (nodeLikeObject.hasOwnProperty('data') === true) {
                  setTimeout(function runFlowNode() {
                      node.code(nodeLikeObject);
                  }, 0);
              }
              else if (typeof this.errorCode !== 'undefined') {
                  setTimeout(function runFlowNodeError() {
                      node.errorCode(nodeLikeObject);
                  }, 0);
              }
          }
docs: Executes the node. This is done via a setTimeout to release the stack depth.
  Even thought it is required for events to be synchronous, a flow step does
  not represent a safe data signal propagation, instead is a pass to other process
  like behavior.
  @property run <public> [Function]
  @argument FlowNode <required> [Object]
  @return Undefined