Multithreaded JobReport

Modify the JobReport service so that it will work properly
with the multithreaded Framework. Locking and synchronization
code was only added where necessary. Parts of it will
already be synchronized by the new Framework (it took
some careful manual review to determine that). A mutex
is used to lock where writes to the output file could
occur concurrently. Some internal data structures were
split into separate structures for the primary source,
secondary file source, and the secondary (mixing) source
to prevent data races. Some other functions were modified
to minimize the parts of the data structures that are
accessed.Some unused code was deleted. Some obscure bugs
related to the secondary source were fixed. Unit tests
updated.
Multithreaded JobReport

Modified JobReport to work with multiple instances
of the MixingModule in a process instead of only one.
Plus minor changes to explicitly add curly braces
around all lock sentries. Fix an erroneous comment.
Multithreaded JobReport

Fix comment.
Merge branch 'CMSSW_7_0_X' of https://github.com/cms-sw/cmssw into multithreadedJobReportService
Multithreaded JobReport

Fix a comment
Merge pull request #905 from wddgit/multithreadedJobReportService

Multithreaded fixes -- Multithreaded JobReport