CombineHarvester updates

  * Tidy-up documentation of CombineHarvester.h
  * CombineHarvester::AddSyst will now output some helpful information
    when verbosity is >= 1. This includes: a list of SystMap entries that
    were never used to build a Systematic, a list of Process entries that
    were encountered but didn't get a Systematic, and a list of Process
    entries that were encountered and did get a Systematic.
  * To facilitate the previous feature, some code added to Utilities to
    print the contents of any std::tuple
  * Added a function to determine the relative path between two files,
    which is now used in WriteDatacard to give the correct path to the
    ROOT File when the user puts it in a different folder.
  * Updated SMLegacyExample to build the datacard folder structure in the
    same way as the existing tools: e.g. `110/ 115/ 120/ 125/ common/`
Merge branch 'dev-merge' into development