Stack placing, which you have, however allow for it to be placed above and below as well.
Filling properties of the bricks (Color, ColorFX, ShapeFX, Name, Item, etc and apply events) with masking by other properties (Color, ColorFX, ShapeFX, Datablock, Name, Item etc):
For instance, where the brick is a 2x2F, apply your current events to it. Or set all bricks with Guns mounted to them to the Water ShapeFX and remove the guns, then save the whole thing to a file.
You could use an event-like structure for the replacers, where Inputs are the properties you can mask by and Outputs are the properties you can change, allowing for multiple sequenced replacements in a single operation. A GUI would certainly be MUCH better for this than some ridiculous servercmds.
And obviously having methods for both saving to and loading from files, and placing duplicates in any position would be good. That is, duplicator with about a thousand new and better qualities.