Fixes bugs in TH1::Merge(), TH2::Merge() and TH3::Merge()

- THx::Merge(): Do not skip empty histograms. The performance penalty is
  marginal and there are cases in which users are interested in such a
  merge. If they want to remove empty histograms, they should do so
  before entering the Merge function.

- In TH2:: and TH3::Merge() the under and overflow bin entries create
  only problems if they are on an axis which does not have the same
  binning in all the merged histograms. If it has the same binning the
  entries in these bins can be merged normally. This is fixed by
  checking each axis individually for limit consistency.

- TH1::RecomputeAxisLimits can now also merge an equidistant user
  binning.
Fix merging of histograms with non equidistant binning.

This is supposed to work if histograms can be merged in X, but have the
same binning in Y, which doesn't have to be equidistant!
Improve IsEquidistantBinningFunction introduced in previous commit, which fixes ROOT-5542

Skip empty histograms when doing the actual merge of bin content.
Empty histogram are now considered only for calculating the limits., after the previous commit from Andreas Bachlechner.
 This is needed, according to ROOT-5509