Updated GetDiagonal to use a fixed size array.
Fixed diagonal searches once and for all.