Add method to swap geometry description modes
Add method to swap geometry description modes

Add method MGEOInputs::mapRegions() to swap between geometry description modes
by_regions and by_planes. The logic is as follows:

- If description_by is set to planes, then a simple arithmetic can get us from
  rings and slabs to regions.

- If description_by is set to regions then:

  a) If region range is within the same ring, then simple arithmetic expressions
     produce the desired rings and slabs.

  b) If the region range spans several rings, and the first region is not in
     the first slab, then a new entry for the first ring is created including
     intial and final slabs and rings, medium number and corresponding regions.

  c) If the region range spans several rings, and the last region is not in
     the last slab, then a new entry for the last ring is created including
     initial and final slabs and rings, medium number and corresponding regions.

  d) If the region range spans several rings, and the first region is in
     the first slab and the last region in the last slab, or after cases b) and c)
     have been accounted for, then one has a contiguous range of regions and it
     is treated as in a).

mchamberland/EGSnrc,MartinMartinov/EGSnrc,ftessier/EGSnrc,ftessier/EGSnrc,ftessier/EGSnrc,nrc-cnrc/EGSnrc,marenaud/EGSnrc,MartinMartinov/EGSnrc,marenaud/EGSnrc,ftessier/EGSnrc,marenaud/EGSnrc,crcrewso/EGSnrc,marenaud/EGSnrc,MartinMartinov/EGSnrc,MartinMartinov/EGSnrc,mchamberland/EGSnrc,ftessier/EGSnrc,crcrewso/EGSnrc,marenaud/EGSnrc,mchamberland/EGSnrc,mchamberland/EGSnrc,crcrewso/EGSnrc,marenaud/EGSnrc,mchamberland/EGSnrc,MartinMartinov/EGSnrc,mchamberland/EGSnrc,crcrewso/EGSnrc,nrc-cnrc/EGSnrc,nrc-cnrc/EGSnrc,ftessier/EGSnrc,crcrewso/EGSnrc,nrc-cnrc/EGSnrc,nrc-cnrc/EGSnrc