Been working on my "max layers" project, got to the point where I have a preliminary patch to share.
http://www.delorie.com/pcb/max-layers-patch.txt This is against CVS. The GTK hid builds, but doesn't actually support layer changes yet (Bill? help? ;) The lesstif HID supports changes, has some new menu entries in the current layer menu, and has a new layer group dialog. You can delete unused layers, add new layers, and move layers up and down in the layer list. The idea is that MAX_LAYER is really an absolute maximum, and a new variable "max_layer" (macro, PCB->Data->LayerN) says how many layers you *currently* have. There's also a DEF_LAYER which is the default number of layers for new boards. MoveLayer() lets you rearrange layers, add new empty layers, and delete layers. Undo works, as long as you don't delete a layer with stuff still on it (need to work on that).