Add [sg]etter methods for optimizer params
Add documentation for class and [sg]etters
Remove `virtual` keyword from [sg]etters

These setters and getters are general enough that they shouldn't need to be
overridden by any subclass
Set defaults for optimizer params
Add defaults to documentation
Refactor GslOptimizer to use getters for params
Make optimizer parameters protected so subclasses can use directly
Pass GslOptimizer as the context to the GSL level

This is done so we can access parameters of the optimizer from the non-memnber
functions GSL needs.
Merge pull request #269 from dmcdougall/minimizer-options

Implement [sg]etter methods for optimizer parameters
Added enum for GSL optimizer solver types.

Also added setter and defaulted to BFGS2.
Added setter
Helper function

To determine if GSL optimizer needs a gradient
.gitignore
Factoring out minimize code to separate function

In preparation for adding gradient free part.
Rename GSL optimizer enums

Closer to GSL documentation
Turned on multiple solvers for gradient algorithms

Also renamed a few internal variables for better readability
Only print error message on 1 processor
Adding gradient free version of GSL optimizer
Now enable all solvers
Resolved a couple of goofs from rebase.