Update to allow Alignment to run multithreaded
Modifications to allow running multithreaded:
- rewrote AlElementHistos to use Accumulator::Histogram
- changed from mutex to shared_mutex to profit from readonly locks
- create AlEquations object in each event call on the stack and add at end of event to minimize number of write locks
- AlignAlgorithm no longer derives from GaudiHistoAlg
- update gaudiiter to support running multi-threaded (works on MDF files only)
This addresses most of what is discussed in #30
This also fixes a crash in a test on clang that was due to a bug in the IO of the Al::Equations object.
Edited by Wouter Hulsbergen