Complement documentation.
Add time dependence to eval(), eval_gradients() and mc() methods.

The eval_gradients() method is no longer const to reflect the fact that the method explicitly sets the gradient attribute of the model parameters.
Adapt to new spectral class interface.
Update documentation
Adapt to new GModelSky interface.

The value() method now takes a photon as argument.
Complete value constructor, add member access methods and introduce precomputation cache.

The value constructor now takes values for all 4 parameter members as arguments. The pivot and cut-off energy arguments have been declared as GEnergy.

All parameter members now have set and retrieve methods. The pivot and cut-off method set and retrieve GEnergy objects.

A precomputation cache has been added for the eval() and eval_gradients() methods that does accelerate computations in case that the energy and the index, cutoff and pivot energy parameters have not changed. This should improve the performance for binned analysis.
Flux variable in eflux() method now defined as eflux.
Correct documentation.
Modify value constructor, add methods for parameter access, add evaluation and mc cache.

The value constructor now takes an object of type GEnergy for the pivot energy.

Methods have been added to access are three model parameters.

Evaluation caches have been added to support the eval(), eval_gradients() and mc() methods. This speeds up evaluation of the spectrum, in particular for binned analysis, and the simulation of photons.
Correct documentation.
Adapt to new GModelSpectral interface.
Correct Doxygen documentation.
Explictely add GSparseMatrix stack size and maximum number of elements parameters.
Expand environment variables in file name during loading.
Add debug option that dumps gradient and covariance matrix in logger after each iteration.
Add missing destroy_stack() call and correct stack_init() parameters.

This commit fixes Bug #812.

The destroy_stack() call was missing in the OpenMP section that was working on a copy of the covariance matrix. This left some values on the stack on exit, leading to an incompletely filled matrix. The matrix element in the lower right corner were thus incorrect. This has been fixed by adding the required destroy_stack() call.

In addition, the stack_init() parameters were not really meaningful. They have now been set to much more meaningful values, reducing considerably the overhead related to the matrix fill.
Update unit test reference values for model fitting after correcting Bug #812.
Reduce npars to 2 in stack_init() call.

A too large value produces too much computations.ZZ
The GSource value constructor takes now a GModelSpatial pointer instead of a const reference, and the model is no longer cloned.

Model cloning is time consuming as it implies dynamic memory allocation, and the GSource class is used for very low-level functions in the model computation, so we don't want to have a speed penalty here. Therefore, GSource now carries the model information instead of cloning it. If cloned information is needed, one can alway pass a cloned pointer to GSource.
Adapt to new GSource interface.