Now using a CancellationToken instead of Dlx.Cancel()

Using a linked cancellation token inside PuzzleSolver.