working on jacob stuff: settled on always requiring a jacobian