added code to symmetrize matrix for pastix, also fixed major typo in tensor placeholder (forgot to add i for the column!!)
moved LinearDerivative to its own function
added jh and mj to kDerivative to support offdiagonal ih terms in Jacobian
distinguished between diagonal and off-diagonal terms in dfdk, added mh in cDerivative
add VecSetComplex and geo.ir()
removed many instances of "int ir = i/Nxyz()"
put Assemble statements outside derivative functions
used vIeps instead of dfI for psibra vector, since dfI will be multimode later on
changed all m in FormJf to pointers to make way for using modelist as an argument
made a bunch of improvements to Jacobian to make way for multimode version
moved ComputeGain to its own function
made vIeps member of Geometry, removed all vscratch versions of this vector in FormJf
made modelist the argument of FormJf, removed Multimode.c, left some TODO statements near calls of FormJf
cleaned up Jacobian further
merged kDerivative and cDerivative into columnderivative
put ColumnDerivatives in FORMODES
put TensorDerivatives inside FORMODES
automatically Assemble in SetJacobian
fixed another typo with AddPlaceholders (the i iteration was stopping upon a Last2 element match rather than just skipping it). Also added temporary code for initial multimode solve
multimode solve converges, but not cubically.