adding model evaluator, nonlinear problem, and matrix free jacobian apply