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

Here and at several places below: Armijio -> Armijo