* means to force a restart of VMLMB

* backtrack (Armijo's rule) when at least one bound constraint
  becomes active along the line search

* check Zoutendijk condition

* implement damped BFGS updating
  see Nocédal & Wright p. 537.

* scale initial gradient
  perhaps use a typical value for the step norm

* improve convergence test

* change API
  use a structure for the workspace

* doxygen documentation

* safeguard the step
