ENH: improved handling of zone allocation in surfMesh
- relocate zone IO from Detail::MeshedSurfaceIOAllocator into surfMesh directly to allow re-purposing of MeshedSurfaceIOAllocator - provide meshedSurf::emptySurface zero-sized placeholder implementation - add concrete implementation of meshedSurf::zoneIds() to simplify overloading