code: function step(inst, raw, argv, event, fin) {
      if (!_isPresent(raw)) return fin(_wrapError(_badInput(inst), inst, raw), null);
      var flat = _denestList(raw);
      preproc(inst, flat, argv, event, function postPreproc(err, data) {
          if (err) return fin(err);
          var list = _safeObject(data);
          return branch(inst, list, argv, event, fin);
      });
  }
docs: Perform one step of execution to the given list, and return the AST.