NonlinearVariationalProblem does not correctly handle the J=None case

The NonlinearVariationalProblem should create the Jacobian if the user fails to pass one in.