Merged requested to merge ssnyder/athena:cache.TrkExUtils-20190205 into master
For MT compatibility, we need to get rid of event-dependent data held in member variables in the intersector tools. In some cases, we don't really need to save this across calls, but it turns out that for SolenoidalIntersector, we do need to save it. So allow attaching an arbitrary data block to TrackSurfaceIntersection in which we can stash this information.
This block will be something deriving from IIntersectionCache; we hold a unique_ptr to it.