code: function(value)
  {
     var rval;
     
     if(value.constructor === Object)
     {
        rval = {};
        var keys = Object.keys(value).sort();
        for(var i in keys)
        {
           var key = keys[i];
           rval[key] = _clone(value[key]);
        }
     }
     else if(value.constructor === Array)
     {
        rval = [];
        for(var i in value)
        {
           rval[i] = _clone(value[i]);
        }
     }
     else
     {
        rval = value;
     }
     
     return rval;
  }
docs: Clones an object, array, or string/number. If cloning an object, the keys
  will be sorted.
  
  @param value the value to clone.
  
  @return the cloned value.