bpm, dispersion and tune weigths should be applicable to any fit a posteriori
modify the way in which weigths are applied. presently they are applied at the stage of computation of the Jacobian. The best would be that for a given jacobian they may be added at any time. For this reason, the Jacobian may be better stored in 3D arrays, easyer to modify later. The computation of the singular values used to apply truncation via np.pinv(..., rcond) would on the other side become not possible.