adjust the API of KL methods for model selection

make the API work for `GradientModelSelection`
@karlnapf 
please merge this.
Please see the following code snippet in `GradientModelSelection.cpp`
```C++
double nlopt_function(unsigned n, const double* x, double* grad, void* func_data)
{
   CMap<TParameter*, CSGObject*>* parameter_dictionary=params->parameter_dictionary;
....
   CMapNode<TParameter*, CSGObject*>* gradient_node=
				gradient_dictionary->get_node_ptr(j);
....
}

Such implementation every parameter in `m_gradient_parameters` will be tuned when `GradientModelSelection` is used. 
However, variational parameters cannot be tuned by directly using GradientModelSelection.

These variational parameters is tuned via `LBFGS` method.