code: function(p1, p2)
  	{
  		var min = Math.min(p1.length, p2.length);
  		var comp = 0;
  		
  		for (var i = 0; i < min; i++)
  		{
  			if (p1[i] != p2[i])
  			{
  				if (p1[i].length == 0 ||
  					p2[i].length == 0)
  				{
  					comp = (p1[i] == p2[i]) ? 0 : ((p1[i] > p2[i]) ? 1 : -1);
  				}
  				else
  				{
  					var t1 = parseInt(p1[i]);
  					var t2 = parseInt(p2[i]);
  					
  					comp = (t1 == t2) ? 0 : ((t1 > t2) ? 1 : -1);
  				}
  				
  				break;
  			}
  		}
  		
  		// Compares path length if both paths are equal to this point
  		if (comp == 0)
  		{
  			var t1 = p1.length;
  			var t2 = p2.length;
  			
  			if (t1 != t2)
  			{
  				comp = (t1 > t2) ? 1 : -1;
  			}
  		}
  		
  		return comp;
  	}
docs: Function: compare
  
  Compares the given cell paths and returns -1 if p1 is smaller, 0 if
  p1 is equal and 1 if p1 is greater than p2.