IslandMap now implemented as a class and not a case class (iso-functional)
The Island map now hides its internal mesh
Merge branch 'feature/refactor-map' into develop