Handling of boundary crossings in geometry tree
The geometrical tracking in several volumes must be made robust against numerical effects at the volume boundaries. Right now, with no special care, tracking runs into an infinite loop, when a track is calculated to volume boundary, but for numerical reasons in the end does not mathematically leave the volume. We need to keep track of boundary crossings explicitly. This is important also for boundary processes (mostly optical stuff). There are first ideas how this should work, but it is not 100% clear. We probably need to save a reference to the "active" volume each particle is in at any moment. This even saves some time, since the starting volume of a new trajectory is on the stack and not calculated from the geometry tree. In this way we can explicitly set the starting volume correctly when we did perform a propagation to a volume boundary.
However, the main point is that for milestone2 we don't need a general solution here. We only want to track particles in ONE homogeneous volume.