So, I have found a toolchain that seems to be able to create the shapes I want.
The difficulty is that OpenScad just barfs when I try to work with complex imported STLs. I’m looking to hack up dungeon terrain, so the things I pull in tend to be ornate, with a lot of triangles. HAcking up involves bolean operations, and it’s just too much for the software.
Use netfabb basic to do any overall cutting of of the imported shape.
Export the shape to stl, and import it into OpenScad. However, decorate it with a ‘%’ so that it does not become part of the final shape.
Build the shapes that you want to union/intersect/difference with the imported shape. Screw holes, recesses for electronics. Export that shape as an STL.
Import the terrain and your working shape into Blender. And this is the important bit: save it as an obj file. The obj file will contain all of your shapes, and at a guess it does them as solid polyhedrons rather than as a manifold.
Then remove the stl files from your scene and import the obj file you just exported. From here, you can use Blender to perform the boolean operations.
Then export the result to STL with options “selected shape only” and “apply modifiers”. From there, pull it into Slic3r, slice, and give it to your printer.