optimize: Change Settings to allow InitialLocation
Created by: btracey
This modifies Settings to allow specifying an initial location and properties of the function (value, gradient, etc.). This allows to work with local optimizers that are seeded with initial settings. This has two fields that must be specified (both Location and Operation). The difficulty is that the default value of the function is 0, so we either must require the user to specify it is set (somehow), or require the user to change the default value away if it is not set. The former seems much safer.
Please take a look.