Unified mesh layer mapping

* Unifies the interface of MeshLayerMapper and LayeredVolume and introduces base class for these two  to handle common functionality.
* Allows to create prism-meshes from incomplete layers or conflicting information and unifies/simplifies GUI dialogue for inputting the relevant information.
* Moves ascii-raster I/O to FileIO
Applying ```std::minmax_element``` to both ```GeoLib::Raster```s ```high``` and ```low``` would result in O(3N) while @rinkks version only takes O(2N) operations ;-)