New jet flavour definition: Backport from 7_1_X to 5_3_X

Backport of #2395, #3025, and #3228.

**Update (Apr. 28, 2014):** PR extended by also backporting #3509 which integrates the new jet flavor into PAT. However, compared to #3509, the old jet flavor definition is left as the default in the 5_3_X release cycle.

**Update (Apr. 30, 2014):** PR extended by also backporting #3601 which changes the data members of pat::Jet storing the flavor information. For backward compatibility an IOREAD rule has been added as well.

**Update (May 9, 2014):** PR extended by also backporting #3785 which replaces runtime cms::Exception calls with edm::LogError calls in the jet flavour code

**Update (May 23, 2014):** PR extended by also backporting #3994 which fixes the handling of pathological cases of Pt=0 groomed jets in the jet flavour clustering