Fixes Givens Rotations to finally output the correct Q and R matrices.  Allows the user to choose which QR decomposition method to use in each gauss-newton class. Part 1 may now rest in peace.