CombineHarvester updates

 * fix a few things that the last update broke in CMSSW 5_3_X
 * Improvement to the handing of TH1s - resolves #502
	- Observation, Process and Systematic classes are now responsible for
	ensuring any TH1 passed in does not have negative bins, as well as
	performing the scaling to unit integral
	- The set_shape methods now take an extra bool which determines in the
	norm value should be updated to the histogram integral or not
	- New methods for getting clones or copies of the internal TH1 are
	added
	- basic implementation of flags to control the behaviour of
	CombineHarvester added. Currently plan to hard-code these to
	something sensible and add an interface later
	- Rewrite VariableRebin to account for these changes
	- Add small script for validating SM legacy cards
Add remaining code and examples from old repo

 - NB: CombinePdfs package cannot be compiled out-of-the-box yet,
   so isn't enabled in the Rules.top file
 - Plotting headers also copied
Merge pull request #558 from ajgilbert/combineharvester-updates

CombineHarvester updates