Initial commit of functions from github.com/btracey/optimize

How do you feel about changing the function signatures to have LinesearchLocation (with X or Step rather than Loc) rather than f, projGrad?