Factored out all member functions of Problem, now Problem is just like
block sparsity pattern: a bunch of data