code: function step(o, scope) {
      var $ = artoo.$,
          $sel = o.sel ? $(scope).find(o.sel) : $(scope),
          val;
  
      // Polymorphism
      if (typeof o === 'function') {
        val = o.call(scope, $);
      }
      else if (typeof o.method === 'function')
        val = o.method.call($sel.get(), $, $sel.get());
      else if (typeof o === 'string') {
        if (typeof $sel[o] === 'function')
          val = $sel[o]();
        else
          val = $sel.attr(o);
      }
      else {
        val = (o.attr !== undefined) ?
          $sel.attr(o.attr) :
          $sel[o.method || 'text']();
      }
  
      // Default value?
      if (o.defaultValue && !val)
        val = o.defaultValue;
  
      return val;
    }
docs: Helpers