Multithread DENSE_SCHUR

Replace the global lock in BlockRandomAccessDenseMatrix
with a per cell lock.

Change-Id: Iddbe38616157b6e0d3770eede3335a056c3ba18c
diff --git a/internal/ceres/block_random_access_dense_matrix.h b/internal/ceres/block_random_access_dense_matrix.h
index 9f27a4c..d160fd9 100644
--- a/internal/ceres/block_random_access_dense_matrix.h
+++ b/internal/ceres/block_random_access_dense_matrix.h
@@ -84,10 +84,10 @@
   double* mutable_values() { return values_.get(); }
 
  private:
-  CellInfo cell_info_;
   int num_rows_;
   vector<int> block_layout_;
   scoped_array<double> values_;
+  scoped_array<CellInfo> cell_infos_;
 
   CERES_DISALLOW_COPY_AND_ASSIGN(BlockRandomAccessDenseMatrix);
 };