Split Array By Values In Sequence : <p>Is there an easy (linq?) way to split an <code>int</code> array into new arrays based off unbroken numerical sequences? For example given this pseudo code:</p>

<pre><code>[Fact]
public void ArraySpike()
{
   var source = new[] {1, 2, 3, 7, 8, 9, 12, 13, 24};

   var results = SplitArray(source);

    Assert.True(results[0] == new[] {1, 2, 3});
    Assert.True(results[1] == new[] {7, 8, 9}); 
    Assert.True(results[2] == new[] {12, 13}); 
    Assert.True(results[3] == new[] {24}); 
}

public int[][] SplitArray(int[] source)
{
    return source.???   
}
</code></pre>
