### Histogram package

The libHist library now depends on libMathCore which must be linked whenever one needs to use the histogram library.

#### TF1

- The code used for implementing numerical methods like `TF1::Integration` or `TF1::Derivation` or `TF1::GetX` has now been now moved in MathCore and used to implement corresponding classes like `GaussIntegrator` or `BrentRootFinder`. The implementation remains however the same.
- A new method `TF1::operator()(double x, double y=0, double z)` which is equivalent to `TF1::Eval` has been added for using TF1 as a callable object.
- New templated methods `TF1::SetFunction` for generic C++ callable objects or for class member functions.

#### TH1

- Fixed a bug in the `TH1::KolmogorovTest` function in the case of scaled or weighted histograms. The routine has been improved and now could also be used for comparing an histogram with a function if it is represented as an histogram with zero errors (equivalent to the case of options "F1" or "F2" in the original HDIFF routine of HBOOK). The bug has been fixed also for the TH2 and TH3 corresponding method. In addition in the case of TH3 use now all 6 axis combinations for estimating the maximum deviation. This is consistent with what is done in the 2D case.
- Improved the `TH1::Chi2Test` for the treatment of empty bins in the histograms. If both histograms have one empty bin, the number of degree of freedom is decreased by one but the test is performed without reporting an error. If only one histogram is having an empty bin it is considered in the comparison.
- Fixed a bug in preserving the global statistic information after scaling, adding or rebinning the histogram.

#### TH2

- Improve `TH2::FitFitSliceX` and `TH2::FitFitSliceY` by adding the possibility to return the generated histograms in a TObjArray when the passed pointer is not null. Support also variable bin size histograms
- Improve histogram projections. The implementation of `TH2::ProjectionX` and `TH2::ProjectionY` has been combined in a single private method.

#### TH3

- Fixed a couple of bugs in `TH3::Project3DProfile`.

#### TProfile and TProfile2D

- Add a new option "W" in `TProfile::ProjectionX` and `TProfile::ProjectionXY` to be able to return the equivalent weighted filled histogram. Its bin content is equal to the profile bin content multiplied by the bin entries.
- Implement in the TProfile a new option, `"G"` for the bin error. This option can be used, bin by bin, for the combination of measurements y with known gaussian error dy. In this case the profile must be filled with a weight = 1./dy**2 and the resulting error from the combination (1./sqrt(Sum(1./dy**2) ) ) will be calculated by the profile.

#### THnSparse

- Implement `THnSparse::Projection` and `THnSparse::Merge`

### New Tutorials

- tutorials/hist/sparsehist.C: an example how to use the new multi dim histogram class THnSparse.
- tutorials/hist/drawsparse.C: an example how to visualize a sparse multi dim histogram. use the new multi dim histogram class THnSparse.