void RegisterUndo(string label)
{
//close, but no cigar:
/*Map m = ((Map)target);
Undo.RegisterUndo(EditorUtility.CollectDeepHierarchy(new Object[]{
m.gameObject,
m.gameObject.GetComponent<MeshFilter>(),
m.gameObject.GetComponent<MeshFilter>().sharedMesh}
), label);*/
Undo.RegisterSceneUndo(label);
}