assemble_structure changed to support Newton iterations. Not correct yet, but it seems close and allows for a much smaller time step.