44X merging with 53X (NOT READY FOR MERGING)

This is the latest in the work I have been doing to get the 44X code updated. The commits on 4th October were manually correcting conflicts during pulling&rebasing form the master branch; the commits after that date are changes from manually going through the automatic rebasing process and correcting things in a attempt to get it to compile.
 
At this stage, it finally compiles, but the error I get when running on both Monte Carlo and data is pasted below. I'm making this pull request just so people can see what I've done so far, because I'm certain there will be numerous corrections to make.

----- Begin Fatal Exception 14-Oct-2013 17:27:10 BST-----------------------   
An exception of category 'ProductNotFound' occurred while
   [0] Processing run: 165205 lumi: 116 event: 91210624
   [1] Running path 'makingNTuples'
   [2] Calling event method for module PATJetCleaner/'goodPatJetsPFlowNotOverlappingWithLeptonsForMEtUncertainty'
Exception Message:
getByLabel: Found zero products matching all criteria
Looking for sequence of type: pat::Jet
Looking for module label: goodPatJetsPFlow
Looking for productInstanceName:
   Additional Info:
      [a] If you wish to continue processing events after a ProductNotFound exception,
add "SkipEvent = cms.untracked.vstring('ProductNotFound')" to the "options" PSet in the configuration.
----- End Fatal Exception -------------------------------------------------