code: function(obj, fn) {
        var values = [];
        iterateOverObject(obj, function(k,v) {
          values.push(v);
          if(fn) fn.call(obj,v);
        });
        return values;
      }
docs: *
  @method values(<obj>, [fn])
  @returns Array
  @short Returns an array containing the values in <obj>. Optionally calls [fn] for each value.
  @extra Returned values are in no particular order. %values% is available as an instance method on extended objects.
  @example
  
  Object.values({ broken: 'wear' }) -> ['wear']
  Object.values({ broken: 'wear' }, function(value) {
  // Called once for each value.
  });
  Object.extended({ broken: 'wear' }).values() -> ['wear']
  
  *