Added a Newton's method and shared line search procedure used by both gradient descent and newton's method. In the process of testing AugmentedLagrangian.