Bug fix to the code code used when shared memory is not available.
Remove build.sh -- the makefile is all I use now.  (Build.sh has the one advantage that it records how to link statically to EXOAnalysis, but that was always really dubious anyway.)
Now that we always run in two separate processes, there's no need to lock on FFTW; it's only called from serial code.
RootInterfaceMutex is no longer required -- fully remove it.
Make fSaveToPushEH use a lockfree structure, and remove the corresponding lock.
Also clean up the code that reserves a sufficient number of nodes, since we know ahead of time an upper bound on the number of nodes needed.
Big commit -- the primary purpose of this set of changes is to make denoising handle events with multiple scintillation signals.  This is important so we can denoise strong source runs needed for generating a lightmap.

However, this commit also modifies the way model waveforms are stored in an attempt at making the handling of charge and light models more uniform.  In the process of doing this, at least one bug affecting charge denoising was found and fixed.
We should always use the sequential version of MKL; adjusting flags to match.
Make build work on SLAC rhel6-64.
Add a short batch submission script for SLAC, to be run with "bsub < SLACBatch.sh".
Clear out the content of models when we're done denoising, along with the other unneeded vectors.
Make the refitter class use asynchronous sends of events.  This hasn't really been a bottleneck in the past, but for efficient running at SLAC we might need to change how the finish-up listener gets allocated time.
Make the event finisher always single-threaded.  This should not have a significant impact on efficiency at NERSC -- the listener never uses very much CPU, and we only use asynchronous MPI calls.

At SLAC, on the other hand, we may end up oversubscribing cores; in this case, it is important to make sure we oversubscribe as little as possible, to avoid negatively impacting other users on a node.
The finish-up process is now single-threaded.  Also, jobs at SLAC are able to start much faster if they require fewer slots.  Reduce the number of slots and number of io treads used at SLAC.
Print the evaluation of the USE_SHARED_MEMORY macro.
MPI irecv takes some non-negligible amount of time to complete at SLAC, even on a shared-memory node.  We get much better performance by doing a true busy-wait for messages.